2011-11-18 20 views
10

Estoy buscando un motor de informes Java que:Alternativas a JasperReports y BIRT

  • no le obligan a utilizar un diseñador para definir plantillas de informes (y por lo tanto permite la generación de informes a través de la API),
  • no es ni JasperReports BIRT,
  • es de código abierto,
  • es libre (como en libertad y cerveza gratis),
  • es decente en su opinión.

Es una pregunta difícil, lo sé. No pude encontrar nada satisfactorio en Google ni aquí en Stack Overflow, pero aún espero que alguien pueda conocer algún tesoro escondido en alguna parte.

+1

¿Cuál es su objetivo final? JR no requiere que use un diseñador; ¿Cuáles son tus otras objeciones? ¿Serías más feliz simplemente usando iText? –

+0

¿Por qué usar JR o Birt no es aplicable en su caso? No hay tantas bibliotecas de informes para Java de todos modos. – Mechkov

+0

Jasper no lo obliga a utilizar su diseñador. Puede crear libremente el jrxml, que define el informe. También estoy luchando con por qué/cómo construirías el diseño del informe a través de una API a menos que crearas más o menos el 'diseñador'. ¿Puede explicar un poco sobre cuál es su objetivo de desarrollo en esto? –

Respuesta

9

No hay muchas herramientas de informes empresariales de código abierto (herramientas de informes en el espíritu de los informes de cristal). Los dos más grandes son BIRT y JasperReport. JFreeReport (parece estar muerto) y DataVision (sin experiencia) son los únicos dos "otros" productos de código abierto que incluso se acercan.

La mayor parte de los productos con información aproximada se centran en la generación de gráficos o la generación de documentos. Si bien este último podría parecer que está "informando", algunos de los esfuerzos no consideran una gama de documentos generados (solo LaTEX, o similar).

Parte del problema es que el tipo de producto que está considerando siempre ha proporcionado una herramienta de creación de informes de arrastrar y soltar debido a que este tipo de informes creció al emular el procesamiento de textos con plantillas. Esto lleva a su otro requisito, una API programática.

Al final, su API generará la plantilla de informe, que luego pasará al motor que combina el informe con sus datos, lo formatea y luego lo renderiza. Como tal, una herramienta como JasperReports (donde la plantilla jrxml está relativamente bien definida) no suena tan mal; porque puedes usar Java para construir un árbol DOM (que es la plantilla de informe) y luego pasarlo al motor (quizás tendrás que serializarlo primero en XML, pero podría ser peor).

Excepto que descarta JasperReports (y la otra plataforma de informes más grande, BIRT) por razones desconocidas. Si bien puede haber excelentes razones para no utilizar ciertos productos disponibles (no puedo usar JaserReports por motivos excelentes), si se considera que muchos de los productos no se pueden usar, se agotan los productos permitidos viables.

El único inconveniente es DataVision, y genera LaTeX o Docbook. Puede obtener la mayoría de los formatos esperados "estándar" con una cadena de compilación de Docbook, pero complica enormemente el flujo de procesamiento de informes, y tendrá que comprender mucho el estilo XSLT de Docbook para obtener cualquier tipo de estilo decente (un típico requisito de "belleza" para muchos informes corporativos).

Buena suerte, y espero que esta información sea de alguna utilidad.

+1

Muchas gracias por su respuesta. Me quedaré con JasperReports, no es exactamente lo que estaba buscando pero es un muy buen motor. –