Ver Mensaje Individual
  #6 (permalink)  
Antiguo 27/11/2008, 21:02
Avatar de HackmanC
HackmanC
 
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 17 años
Puntos: 260
Sonrisa Respuesta: llenar reporte con funcion????

Hola,

Exactamente, se necesita una clase que implemente la interfaz JRDatasource.
http://jasperreports.sourceforge.net...ataSource.html

Creo que en la más adecuada, (por ser un Array), sería JRBeanArrayDataSource.
http://jasperreports.sourceforge.net...ataSource.html

Tienes que crear un Bean, que funcione como Data Transfer Object DTO, crear una instancia por cada fila y agregarlos a un Array, instanciar un JRBeanArrayDataSource con dicho Array y pasarselo a fillReport.

Object[] data = new Object[2];
data[0] = new DatosBean(1, "A", 0, 1, 0, 1, "D");
data[1] = new DatosBean(2, "B", 1, 0, 1, 0, "D");
JRBeanArrayDataSource dataArray = new JRBeanArrayDataSource(data);
JasperPrint jasperPrinter = JasperFillManager.fillReport(jasperReport, new HashMap(), dataArray);

Un excelente ejemplo, pero con "JRBeanCollectionDataSource", que viene siendo muy parecido a "JRBeanArrayDataSource" ...
http://www.crysfel.com/index.php/200...-jasperreport/

Saludos,