Herramientas de usuario

Herramientas del sitio


plugins:ejemploplugin

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
Última revisión Ambos lados, revisión siguiente
plugins:ejemploplugin [2021/07/01 15:19]
fcristina
plugins:ejemploplugin [2021/07/01 16:29]
fcristina [Implementación de clases del package ar.com.disytel.plugin.reportProvider]
Línea 483: Línea 483:
  
 ===== Implementación de clases del package ar.com.disytel.plugin.reportProvider ===== ===== Implementación de clases del package ar.com.disytel.plugin.reportProvider =====
 +
 +//Pendiente a incorporar a CORE//
  
 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. 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.
Línea 489: Línea 491:
  
   * 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**, la cual contiene el método **addReportParametersToLaunch(MJasperReport report, PO po)**.+  * Debe implementar la interfaz **org.openXpertya.plugin.report.ReportProviderInterface**, la cual contiene el método **addReportParametersToLaunch(MJasperReport report, PO po)**.  
 + 
 +Este método inyecta dos parámetros: 
 + 
 +  * **MJasperReport report**: Reporte Jasper al cual podremos incorporarle nuevos parámetros previo a su rellenado. 
 +  * **PO po**: El objeto base con la información a imprimir.  Por ejemplo si estamos imprimiendo una factura se recibirá un MInvoice, si estamos imprimiendo un recibo se recibirá un MAllocationHdr. Si por el contrario se está imprimiendo un listado, se recibirá null.
  
-Por ejemplo, suponiendo que es necesario incorporar nuevos parámetros para la impresión Jasper de facturas.+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**, con lo cual sera necesario crear la clase **ar.com.disytel.plugin.reportProvider** e implementar **org.openXpertya.plugin.report.ReportProviderInterface**.
  
-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;
  
-Con lo cual sera necesario crear la clase **ar.com.disytel.plugin.reportProvider**.+public class LaunchInvoice implements ReportProviderInterface { 
 +  
 + @Override 
 + public void addReportParametersToLaunch(MJasperReport report, PO po) { 
 + // Agregar los parámetros que necesitemos 
 + report.addParameter("FOO", getFoo(po)); 
 + report.addParameter("BAR", getBar(po)); 
 +
 +
 +</code>
  
  
  
  
plugins/ejemploplugin.txt · Última modificación: 2021/07/02 12:37 por fcristina