Printed Forms with Reports (ODT): Difference between revisions

From IHRIS Wiki
Line 63: Line 63:
|-
|-
| {{{'''++limit+form+mapfield'''}
| {{{'''++limit+form+mapfield'''}
| Inside Row Loop
| Loop Fila Interna
| Sí se ha puesto un límite para uno de los formularios es este informe a través de un MAP field, entonces este será el nombre de formulario al que el mapfield se mapee  que se mostrará.
| Sí se ha puesto un límite para uno de los formularios es este informe a través de un MAP field, entonces este será el nombre de formulario al que el mapfield se mapee  que se mostrará.
|-
|-

Revision as of 19:27, 30 September 2013

El módulo de formularios impresos se utiliza para imprimir formularios "estandarizados" u "oficiales" basados en los informes en el sistema. Por ejemplo, puede ser el número de registro de una enfermera. Será exportado como un Documento de Open Office. Este documento puede fácilmente ser leído en Microsoft Word 2003.

Dependiendo de lo que necesite, puede que desee ver estos otros métodos para la creación de formularios estandarizados:


¿Qué son los Formularios Impresos?

Los Formularios Impresos permiten crear una plantilla de OpenDocument Text (ODT) que pude llenarse con los datos del informe. Esto está basado en Standardized Letters que pueden utilizarse para un registro individual.

Agregar un Formulario Impreso a una Visualización de Informe

Hay dos pasos para agregar un formulario impreso a una visualización de informe. Primero debe crear el archivo plantilla, luego crear un módulo con el archivo de plantilla y la configuración para a visualización de informe. Por ejemplo, puede buscar SampleStaffPrintedForm en el módulo de directorio de iHRIS Manage demo site.

Crear una Plantilla ODT

El archivo plantilla necesita datos temporales para los campos que desee mostrar. También existen otros datos temporales para datos especiales. Todos los datos temporales se aplicaran al resultado final. Todos los datos temporales se encuentran rodeados de {{{ and }}}. Cualquier formato que se le aplique al dato temporal será aplicado el resultado final. También debe señalar donde está el bloque de texto que desea repetir para cada fila de la base de datos. Rodeará este bloque con [!-- BEGIN report_row --] y [!--END report_row --]. Vea más adelante para los detalles para utilizar una tabla para su resultado final.

Aquí se encuentran los datos temporales que se pueden utilizar en el informe. Datos temporales especiales inician con ++. Los datos temporales coinciden con el nombre form+field en la visualización de informe. Los datos temporales de encabezados pueden ser utilizados es cualquier lugar del documento. Algunos aplican sólo dentro o fuera del loop para el informe.

Dato Temporal Aplica Descripción
{{{++report_title}}} Loop Fila Externa El título del informe.
{{{++report_description}}} Loop Fila Externa La descripción del informe.
{{{++report_limit}}} Loop Fila Externa Los límites de informe seleccionados cuando este informe fue creado.
{{{++user_name}}} Loop Fila Externa El nombre de usuario del usuario que creó este informe.
{{{++time}}} Loop Fila Externa La hora en la que el informe fue ejecutado.
{{{++header+form+field}}} Cualquiera El encabezado del campo específico.
{{{++row_num}}} Inside Row Loop El número de fila actual del registro.
{{{form+field}}} Loop Fila Interna El valor de el campo específico en la visualización de informe.
{{{form+field+width=2.0in,maxheight=3.0in}}} Loop Fila Interna Si el campo del formulario es una imagen, puede brindarse información extra para el ajuste de las dimensiones.
{{{++limit+form+mapfield} Loop Fila Interna Sí se ha puesto un límite para uno de los formularios es este informe a través de un MAP field, entonces este será el nombre de formulario al que el mapfield se mapee que se mostrará.
{{{++limit+form+mapfield+field} Loop Fila Interna Sí se ha puesto un límite para uno de los formularios es este informe a través de un MAP field, entonces este será valor del campo al que el mapfield se mapee que se mostrará.

Este es el ejemplo para el mismo módulo. Puede descargar el source file de esto para ver el formato.

{{{++report_title}}}
{{{++report_description}}}
{{{++report_limit}}}
Report printed by {{{++user_name}}} at {{{++time}}}.
[!-- BEGIN report_row --]
{{{++row_num}}}. {{{person+surname}}}, {{{person+firstname}}}
{{{++header+facility+name}}}: {{{facility+name}}}			{{{++header+work+telephone}}}: {{{work+telephone}}}
{{{++header+position+title}}}: {{{position+title}}}			{{{++header+work+email}}}: {{{work+email}}}
{{{++header+department+name}}}: {{{department+name}}}

[!-- END report_row --]

Cuando desee repetir una fila de una tabla para las filas de su informe, deberá cambiar las oraciones de BEGIN y END a [!-- BEGIN row.report_row --] y [!-- END row.report_row --]. Vea el table example del módulo de muestra. El ejemplo siguiente ha sido recortado debido al espacio.

# {{{++header+person+surname}}} {{{++header+person+firstname}}} {{{++header+work+email}}}
[!-- BEGIN row.report_row --]{{{++row_num}}} {{{person+surname}}} {{{person+firstname}}} {{{work+email}}}[!-- END row.report_row --]

Creating the Module

Once you have created the ODT template file, you'll need to create a module to place the file and configure the printed forms for your report. The module needs an odt_templates directory where you can place your ODT file as well as the module configuration file. You should require the CustomReports-PrintedReportsODT module so the Forms Print button will appear on your report view.

For your configuration file, you will need to create a node under the report view this template applies to. All the fields you use in the template must be enabled in the report view. The printed_forms node should be in the top level of your report view and then a unique name for this printed form template. Below that you need to define the template which is the name of the template file in the odt_templates directory and displayName for what appears when the user wants to view this template. The configuration for the sample module is below with two printed forms defined. This sample also requires the ihris-manage-CustomReports-staff-reports module since that's where the staff_directory report view is defined.

<source lang="xml"> <?xml version="1.0"?> <!DOCTYPE I2CEConfiguration SYSTEM "I2CE_Configuration.dtd"> <I2CEConfiguration name="sample-staff-list-printed-form">

 <metadata>
   <displayName>Sample Staff Printed Forms</displayName>
   <description>Sample staff printed forms generated from the staff_directory report view.</description>
   <requirement name="ihris-manage-CustomReports-staff-reports">
     <atLeast version="4.1" />
     <lessThan version="4.2" />
   </requirement>
   <requirement name="CustomReports-PrintedReportsODT">
     <atLeast version="4.1" />
     <lessThan version="4.2" />
   </requirement>
   <path name="odt_templates">
     <value>./odt_templates</value>
   </path>
 </metadata>
 <configurationGroup name="sample-staff-list-printed-form"     
                     path="/modules/CustomReports/reportViews/staff_directory/printed_forms">
   <configurationGroup name="staff_form">
     <configuration name="template">
       <value>StaffForm.odt</value>
     </configuration>
     <configuration name="displayName" locale="en_US">
       <value>Staff Form</value>
     </configuration>
   </configurationGroup>
   <configurationGroup name="staff_table">
     <configuration name="template">
       <value>StaffTableForm.odt</value>
     </configuration>
     <configuration name="displayName" locale="en_US">
       <value>Staff Table</value>
     </configuration>
   </configurationGroup>
 </configurationGroup>

</I2CEConfiguration> </source>