jasperreports y ireport

2
Creación de reportes en JAVA con múltiples formatos usando JasperReports y iReport Frecuentemente o siempre, cuando hacemos un proyecto sobre un sistema, los clientes desean ver reportes sobre los datos que se generar en dicho sistema, por lo general, estos datos se encuentran almacenados en una base de datos. Si han tenido que hacer reportes de 7 o más columnas, sabrán que no es tan sencillo como pudiésemos pensar. Muchos desarrolladores comentan que es lo más sencillo que hay ya que a lo mucho, nos tardaremos media hora en crear el querypara obtener los datos que necesitamos. Si bien esto podría ser cierto en la mayoría de los casos, lo que no siempre es fácil es; mapear los datos a los objetos que vamos a usar y aún menos el formatearlos de manera que nuestro reporte sea fácil de entender y le proporcione al cliente la suficiente información como para que este le sea de utilidad. El asunto se complica cuando nos piden reportes en formatos distintos al texto plano o HTML (en el caso de los sistemas web), como por ejemplo PDF, CSV, XLS, RTF, etc., ya que estos formatos no son manejados de forma nativa por java. Podríamos usar iText para crear los reportes en PDF, JExcelAPI para los XLS, y así sucesivamente. Sin embargo estas APIs no trabajan de la misma forma, por lo que primero tendríamos que aprender a usar cada una de ellas además de que, en la mayoría de los casos, toda la información del formateo de los datos se encuentra en código Java duro, por lo que cualquier cambio requiere primero identificar entre nuestra maraña de código dónde se encuentra la sección que necesitamos modificar y posteriormente hacer este cambio.

Upload: gustavo-de-jesus-ambrocio

Post on 17-Jul-2015

232 views

Category:

Software


5 download

TRANSCRIPT

Page 1: JasperReports y iReport

Creación de reportes en JAVA con múltiples formatos

usando JasperReports y iReport

Frecuentemente o siempre, cuando hacemos un proyecto sobre un sistema, los

clientes desean ver reportes sobre los datos que se generar en dicho sistema, por

lo general, estos datos se encuentran almacenados en una base de datos.

Si han tenido que hacer reportes de 7 o más columnas, sabrán que no es tan sencillo

como pudiésemos pensar. Muchos desarrolladores comentan que es lo más sencillo

que hay ya que a lo mucho, nos tardaremos media hora en crear el “query” para

obtener los datos que necesitamos.

Si bien esto podría ser cierto en la mayoría de los casos, lo que no siempre es fácil

es; mapear los datos a los objetos que vamos a usar y aún menos el formatearlos

de manera que nuestro reporte sea fácil de entender y le proporcione al cliente la

suficiente información como para que este le sea de utilidad.

El asunto se complica cuando nos piden reportes en formatos distintos al texto plano

o HTML (en el caso de los sistemas web), como por ejemplo PDF, CSV, XLS, RTF,

etc., ya que estos formatos no son manejados de forma nativa por java.

Podríamos usar iText para crear los reportes en PDF, JExcelAPI para los XLS, y así

sucesivamente. Sin embargo estas APIs no trabajan de la misma forma, por lo que

primero tendríamos que aprender a usar cada una de ellas además de que, en la

mayoría de los casos, toda la información del formateo de los datos se encuentra

en código Java duro, por lo que cualquier cambio requiere primero identificar entre

nuestra maraña de código dónde se encuentra la sección que necesitamos

modificar y posteriormente hacer este cambio.

Page 2: JasperReports y iReport

Afortunadamente existe una alternativa para la creación de estos

reportes: JasperReports.

JasperReports es un API OpenSource que nos permite generar reportes en

formatos PDF, XML, HTML, CSV, XLS, RTF, y TXT con solo unas cuantas líneas

de código y guardar este reporte en un archivo, enviarlo por un OutputStream, o

mostrarlo directamente con un visor especial (si usamos una aplicación swing).

Además nos permite integrar en nuestros reportes cosas como gráficas de todos

tipos, tablas cruzadas, y subreportes para poder mostrar mejor nuestros datos.

Por si fuera poco los creadores de JasperReports nos proporcionan también un

editor WYSIWYG para crear toda la parte visual de los reportes (formatos,

posiciones, tipos de letra, estilos, imágenes, decoraciones, etc.) llamada iReport, la

cual es un complemento perfecto para JasperReports.

iReports se encuentra en dos versiones, una es como una aplicación standalone

basada en NetBeans (que de hecho la interface es casi la misma) y la otra es como

un plugin para NetBeans.