Si no desea utilizar el asistente Manejador de informes EGL nuevo para crear un manejador de informes, puede crear manualmente el manejador de informes.
Puede copiar este código y modificarlo para su aplicación.
El código de ejemplo que muestra la sintaxis para crear manualmente un manejador de informes
handler handlerName type jasperReport // Declaraciones de uso (opcional) use usePartReference; // Declaraciones de constante (opcional) const constantName constantType = literal; // Declaraciones de datos (opcional) identifierName declarationType; // Funciones de retorno de llamada Jasper predefinidas (opcional) function beforeReportInit() ... end function afterReportInit() ... end function beforePageInit() ... end function afterPageInit() ... end function beforeColumnInit() ... end function afterColumnInit() ... end function beforeGroupInit(stringVariable string) ... end function afterGroupInit(stringVariable string) ... end function beforeDetailEval() ... end function afterDetailEval() ... end // Funciones definidas por el usuario (opcional) function myFirstFunction() ... end function mySecondFunction() ... end end
Ejemplo que muestra cómo obtener parámetros de informe
handler myReportHandler type jasperReport // Declaraciones de datos report_title String; // Función de retorno de llamada Jasper function beforeReportInit() ... report_title = getReportTitle(); ... end ... // Función definida por el usuario function getReportTitle() Returns (String) return (getReportParameter("ReportTitle")); end end
Ejemplo que muestra cómo establecer y obtener variables de informe
handler myReportHandler type jasperReport // Declaraciones de datos employee_serial_number int; // Función de retorno de llamada Jasper function afterPageInit() ... employee_serial_number = getSerialNumberVar(); ... end ... // Función definida por el usuario function getSerialNumberVar() Returns (int) employeeName String; employeeName = "Ficus, Joe"; setReportVariableValue("employeeNameVar", employeeName); return (getReportVariableValue("employeeSerialNumVar")); end end
Ejemplo que muestra cómo obtener valores de campo de informe en un manejador de informes
handler myReportHandler type jasperReport // Declaraciones de datos employee_first_name String; // Función de retorno de llamada Jasper function beforeColumnInit() ... employee_first_name = getFirstNameField(); ... end ... // Función definida por el usuario function getFirstNameField() Returns (String) fldName String; fldName = "fname"; return (getFieldValue(fldName)); end end
Ejemplo que muestra cómo añadir un registro flexible de datos de informe en un manejador de informes
handler myReportHandler type jasperReport // Declaraciones de datos customer_array customerRecordType[]; c customerRecordType; // Función de retorno de llamada Jasper function beforeReportInit() customer ReportData; datasetName String; //crear el objeto ReportData para el subinforme Customer c.customer_num = getFieldValue("c_customer_num"); c.fname = getFieldValue("c_fname"); c.lname = getFieldValue("c_lname"); c.company = getFieldValue("c_company"); c.address1 = getFieldValue("c_address1"); c.address2 = getFieldValue("c_address2"); c.city = getFieldValue("c_city"); c.state = getFieldValue("c_state"); c.zipcode = getFieldValue("c_zipcode"); c.phone = getFieldValue("c_phone"); customer_array.appendElement(c); customer.data = customer_array; datasetName = "customer"; addReportData(customer, datasetName); end end
Ejemplo que muestra cómo un documento de diseño XML obtiene un registro de datos de informe del manejador de informes
<jasperReport name="MasterReport" scriptletClass="subreports.SubReportHandler"> ... <subreport> <dataSourceExpression> <![CDATA[(JRDataSource)(((subreports.SubReportHandler) $P{REPORT_SCRIPTLET}).getReportData( new String("customer")))]]> </dataSourceExpression> <subreportExpression class="java.lang.String"> <![CDATA["C:/RAD/workspaces/Customer.jasper"]]> </subreportExpression> </subreport> ... </jasperReport>
Conceptos relacionados
Visión general del informe EGL
Visión general del proceso de creación de informes de EGL
Tareas relacionadas
Crear un archivo fuente EGL
Crear un manejador de informes de EGL
Utilizar plantillas de informe
Consulta relacionada
Biblioteca de informes de EGL
Manejador de informes de EGL
Funciones de manejador de informes predefinidas
Funciones de manejador de informes EGL adicionales