tools reporting open source

12

Click here to load reader

description

This document explain about a pair tools reporting for generate in java.

Transcript of tools reporting open source

Page 1: tools reporting open source

Comparativa herramientas reporting open source

Proceso de evaluación

Autor: Josep Curto Díaz Fecha creación: 20/07/2007 [email protected]

1. Introducción................................................................................................ 2 2. Pentaho Reporting ..................................................................................... 2 3. Eclipse Birt .................................................................................................. 4 4. Jasper Reports............................................................................................ 5 5. Comparativa de características .............................................................. 6 6. Comparativa de soporte y comunidades................................................ 8 7. Roadmap.................................................................................................... 10

Page 2: tools reporting open source

Titulo del documento

20/07/2007 Pag. 2 de 12

1. Introducción El presente documento tiene el objetivo de evaluar el estado actual de

las principales herramientas de reporting open source del mercado con la meta de conseguir criterios de discriminación para el uso de las mismas en diferentes proyectos.

Los principales proyectos de reporting son:

� Pentaho Reporting: Herramienta de reporting anteriormente llamada

JFreeReports, adquirida e integrada en la suite Business Intelligence open source Pentaho. Para la generación de informes existen diferentes aplicaciones tanto a nivel de cliente (report wizard, report designer) como web (web ad-hoc reporting).

� Eclipse Birt: Herramienta especializada en reporting basada en la distribución eclipse con capacidad de ser embebida en proyectos J2EE de manera independiente. Es uno de los proyectos que existen en la fundación eclipse y está apoyado tanto por IBM como por Actuate.

� Jasper Reports: Esta herramienta es el producto que lleva más tiempo en el mercado. Cuenta con una herramienta llamda iReports para el desarrollo de informes.

2. Pentaho Reporting Pentaho Reporting es la solución proporcionada por pentaho e integrada en su suite para el desarrollo de informes. Originariamente el proyecto se llamaba JFreeReports hasta la adquisición por parte de pentaho. Existen tres productos diferentes con diferentes enfoques y dirigidos a diferentes tipos de usuarios. Por una parte, existe un editor basado en eclipse con prestaciones profesionales de customización de informes denominado report redesigner destinado a desarrolladores de informes.

Page 3: tools reporting open source

Titulo del documento

20/07/2007 Pag. 3 de 12

Por otro lado, existen un par de herramientas destinadas a usuarios con menos conocimientos técnicos basadas en wizards. Una como aplicación cliente llamada report design wizard:

Y otra vía web, llamada web ad-hoc reporting:

Page 4: tools reporting open source

Titulo del documento

20/07/2007 Pag. 4 de 12

El esquema de desarrollo de las aplicaciones de pentaho reporting sigue un esquema parecido al de BIRT (consultable a posteriori). El informe generado está encapsulado en un xml que el runtime transforma en el formato de visualización escogido.

3. Eclipse Birt

Proyecto iniciado en 2005 con el auspicio Actuate conjuntamente con la fundación Eclipse. Es un subproyecto de eclipse que está coordinado a nivel de ciclo de desarrollo con el proyecto principal de la fundación eclipse: el IDE eclipse.

Birt presenta un framework integrado con el IDE Eclipse para el

desarrollo de informes y de un runtime para aplicaciones J2EE para visualizar estos informes

Como en las diferentes herramientas analizadas, los informes generados

están encapsulados en xml. El flujo de creación de informes viene representado por el siguiente esquema:

El visor de informes de Birt es una aplicación J2EE con capacidades de ser embebido en una aplicación existente asimismo customizable.

Page 5: tools reporting open source

Titulo del documento

20/07/2007 Pag. 5 de 12

4. Jasper Reports Este proyecto se inició en 2001 como proyecto personal de Teodor Danciu. A posteriori es adquirido por JasperReports para dar respuesta a las necesidades de reporting y para formar parte de la suite propia conjuntamente con Jasper Server. Presenta un editor java llamado iReports que permite agilizar la creación de informes. El mecanismo de generación de informes sigue el siguiente esquema:

Cosa que nos indica que dos detalles importantes respecto a las otras soluciones:

• Para poder visualizar informes generados con iReport estos deben ser compilados.

• En el caso de necesitar modificar un informe existente es necesario recompilar el informe.

Es decir, es necesario pasar necesariamente por la fase intermedia de compilación. El visor de informes está realizado en swing, al igual que el editor de informes.

Page 6: tools reporting open source

Titulo del documento

20/07/2007 Pag. 6 de 12

5. Comparativa de características Existen diferentes aspectos a comparar en las diferentes herramientas

de reporting como conectividad de fuentes de datos, capacidad gráfica, formatos de salida,… que se recopilan en las siguientes tablas.

Producto BIRT Report Designer

Jasper Reports

Versión 2.2 1.5.5.239-0 2.0

Propiedades genéricas

Eclipse-based Si Si No

Eclipse Plugin Si Si Si* *independiente de ireports

xml files generation Si Si Si

Extensibility (through API) Si Si Si

Wizards Si Si Si

Previewer Si Si Si

Pentaho Integration Si Native Si

Drag & Drop Functionality Si Si No

Business Rules Support Si Si Si

Graphical Edition Si Si Si* *usando swing

XML Edition Si Si No

Grid Layout Si No No

Builtin precalculated functions Si Si Si

Free-Form Layout No Si Si

Fuentes de datos

JDBC Si Si Si

XML Si Si Si

MDX - XML/A No** Si Si*

*Solo MDX, **Cross tables soportadas

Web service Si No No

Hibernate No No Yes

EJB No No Yes

SSV (semi-colon separated values) Si No No

TSV (tab separated values) Si No No

PSV (pipe separated values) Si No No

Page 7: tools reporting open source

Titulo del documento

20/07/2007 Pag. 7 de 12

CSV (comma separated values) Si No Si

POJO / JavaBeans Si No Si

Propiedades

Multiple Data Sources Si No Si

Combined diferents Data Sources Si No No

Data transformations Si Si Si

Formato de salida

PDF Si Si Si

HMTL Si Si Si

EXCEL Si Si Si

RTF Si Si Si

TXT Si Si Si

ODT No No* Si * integración futura openoffice

Postscript Si No No

PPT Si No No

DOC Si No No

Características de distribución

Bursting Si* Si Si* * a través de integración pentaho

Email Si* Si Si* * a través de integración pentaho

Web service delivery Si* Si Si* * a través de integración pentaho

Tipos de informes

No paramétricos Si Si Si

Paramétricos Si Si Si

Suscripción Si* Si Si* * a través de integración pentaho

Report Properties

HMTL Pagination Si No Si

Formatting Si Si Si

TOC Si No No

CSS Style Si No No

Page 8: tools reporting open source

Titulo del documento

20/07/2007 Pag. 8 de 12

Templates (Library) Si No Si

Internalization Si Si Si

Subreports Si Si Si

Javascript scripting Si Si** Si* *Groovy, **Rhino

Hiperlinks Si Si Si

Report elements

Chart Si Si* Si* *Using jfreechart

List Si Si Si

Table Si Si Si

Dynamic CrossTabs Si No Si

Text Si Si Si

Dynamic Text Si Si Si

Image Si Si Si

Label Si Si Si

Grid Si No No

Difference Si Si Si

Gantt Si No No

Tube Si No No

Cone Si No No

Pyramid Si No No

2D Si Si Si

3D Si Si Si

Dial No Si Si

Chart Properties

Events Si Si No

Chart Outputs

PNG Si Si Si

JPG Si Si Si

BMP Si No No

SVG Si Si Si

EPS Si Si Si

PDF Si Si Si

6. Comparativa de soporte y comunidades Uno de los aspectos importantes a tener presente en las diferentes

herramientas es el tipo de soporte existente así como las comunidades

Page 9: tools reporting open source

Titulo del documento

20/07/2007 Pag. 9 de 12

existentes alrededor del producto ya sean estas las de usuarios, las de partners o de las empresas que apoyan el proyecto.

Birt

Birt presenta diversos canales de información:

• Página web del producto con tutoriales, explicación de las características del producto y ejemplos descargables para comprender el funcionamiento del mismo.

• Listas de correo y grupos de discusión a partir de los cuales conseguir información de cómo se usa el producto y estar actualizado sobre las últimas novedades del mismo.

• FAQ • Herramienta para el envío de errores detectados: bugzilla.

Pentaho Reporting

Pentaho Reporting presenta diversos canales de información:

• Página web con explicación del producto, las características del mismo y las novedades.

• Foro para la comunidad focalizado en el reporting que proporciona respuesta a los usuarios con una alta participación. Así mismo, existe un foro el motor de renderizado de las herramientas de reporting.

• Existencia del blog de uno de los responsables del desarrollo del producto donde se explican novedades y usos del mismo.

• FAQ • Herramienta para el envío de errores detectados: jira. • Servicio de pago que proporcona soporte por parte de pentaho que

en el caso de existir partners locales se deriva a los mismos.

Jasper Reports

Jasper presenta diversos canales de información:

• Página web del producto con una mínima información pública accesible.

• Foro de consulta. • FAQ (con sólo dos preguntas cortas). • Tutoriales básicos de inicio de desarrollo de informes. • Manuales profesionales de pago sobre la herramienta de generación

de informes. • Soporte de pago.

Page 10: tools reporting open source

Titulo del documento

20/07/2007 Pag. 10 de 12

7. Roadmap Finalmente, se debe tener en cuenta el roadmap futuro de las

diferentes herramientas de reporting para determinar si las herramientas cubrirán necesidades actuales o futuras de proyectos y cómo medidor de las sinergias y la vitalidad del proyecto. Birt:

Coincidiendo con la salida la versión de Eclipse 3.3 llamada Europa a finales de Julio 2007, ha salido la versión 2.2 de BIRT. De manera que se desconoce aún el roadmap futuro de BIRT exceptuando que la siguiente versión 2.2.1 proporcionará resolución de los posibles bugs presentes en la versión 2.2.

A modo de resumen, la nueva versión ha significado un cambio considerable respecto la anterior versión dado que incluye nuevas características como:

• Soporte para Dynamic Crosstab • Web Service ODA • Wizards para la creación de proyectos web con BIRT • BIRT TAg Library: permite la customización de viewer para informes. • Wizards para la creación de proyectos Open Data Access • Mejoras en deployment, el viewer, la calidad, nuevos tipos y wizards de

creación para los gráficos de BIRT. • Nuevos formatos de salida: XLS, Word, PPT, postscript. • Mejoras en el viewer y en los wizards de configuración de parámetros. • Soporte para CSS externos

Page 11: tools reporting open source

Titulo del documento

20/07/2007 Pag. 11 de 12

Pentaho Reporting: El roadmap de pentaho lo conduce hacia la versión 1.6 en la que convergen todos sus proyectos. Actualmente justo ha salido la versión 1.5.5.239-0 (M5) de pentaho reporting que incluye entre sus novedades:

• Inclusión del motor JFreeReport 0.8.8 • Inclusión de nuevos gráficos • Actualización de jfreechart a la versión 1.0.4 • Mejora de bugs • Mejora de los menus • Subreports

Cabe comentar que la futura versión de JFreeReport 0.9.x (el motor de renderizado y generación de informes) ha sido diseñado de nuevo con el objetivo de:

• Obtener un procesador flexible. • Centrado en el contenido a generar y no en los datos. • Inclusión de fuentes de datos hibérnate. • Integración con kettle para uso como fuente de datos • Uso de fórmulas customizables para los datos • Inclusión de TOC en los informes

JasperReports:

Page 12: tools reporting open source

Titulo del documento

20/07/2007 Pag. 12 de 12

También JasperReport ha actualizado su herramienta de generación de informes a la versión 2.0 cuyas novedades son:

• Soporte para la versión 1.3.4 de JasperReports • Nueva herramienta de mapeo xml • Mejoras en la refactorización de código, en los diálogos de

parámetros • Resolución de bugs

No hay noticias sobre roadmap futuro.