Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
plugins:ejemploplugin [2021/07/01 15:19] fcristina |
plugins:ejemploplugin [2021/07/02 12:37] (actual) fcristina [Implementación de clases del package ar.com.disytel.plugin.reportProvider] |
||
---|---|---|---|
Línea 484: | Línea 484: | ||
===== Implementación de clases del package ar.com.disytel.plugin.reportProvider ===== | ===== Implementación de clases del package ar.com.disytel.plugin.reportProvider ===== | ||
- | En caso de necesitar incorporar nuevos parámetros a un informe Jasper, pero sin necesidad de redefinir la clase por completo, es posible crear una clase que simplemente se encargue de incorporar al Jasper los parametros adicionales específicos del componente. | + | A partir de la revision r2968, en caso de necesitar incorporar nuevos parámetros a un informe Jasper, pero sin necesidad de redefinir la clase por completo, es posible crear una clase que simplemente se encargue de incorporar al Jasper los parametros adicionales específicos del componente. |
Es importante que la clase respete los siguientes: | Es importante que la clase respete los siguientes: | ||
* Debe tener igual nombre de clase que la existente en Libertya CORE | * Debe tener igual nombre de clase que la existente en Libertya CORE | ||
- | * Debe implementar la interfaz **org.openXpertya.plugin.report.ReportProviderInterface**, | + | * Debe implementar la interfaz **org.openXpertya.plugin.report.ReportProviderInterface**, |
- | Por ejemplo, suponiendo que es necesario incorporar nuevos | + | Este método inyecta dos parámetros: |
- | La clase en CORE es **org.openXpertya.JasperReport.LaunchInvoice**. | + | |
+ | | ||
- | Con lo cual sera necesario crear la clase **ar.com.disytel.plugin.reportProvider**. | + | Por ejemplo, suponiendo que es necesario incorporar nuevos parámetros para la impresión Jasper de facturas, la clase en CORE es **org.openXpertya.JasperReport.LaunchInvoice**, |
+ | |||
+ | <code java> | ||
+ | package ar.com.disytel.plugin.reportProvider; | ||
+ | import org.openXpertya.JasperReport.MJasperReport; | ||
+ | import org.openXpertya.model.MInvoice; | ||
+ | import org.openXpertya.model.PO; | ||
+ | import org.openXpertya.plugin.report.ReportProviderInterface; | ||
+ | |||
+ | public class LaunchInvoice implements ReportProviderInterface { | ||
+ | |||
+ | @Override | ||
+ | public void addReportParametersToLaunch(MJasperReport report, PO po) { | ||
+ | // Agregar los parámetros que necesitemos | ||
+ | report.addParameter(" | ||
+ | report.addParameter(" | ||
+ | } | ||
+ | } | ||
+ | </ | ||