Pregunta

Mi tarea actual es producir un informe sobre una colección de bastante gran conjunto de datos lineal (es decir, donde el valor 10 depende de algunos factores promedio de 9 8 7 6 5 4 3 etc

El problema también es que esta lógica (le llaman media móvil de ahora) no es fijo y es muy probable cambiar. Necesito no sólo generar un informe en HTML, pero en Excel y tal vez por correo electrónico a utilizar automáticamente (lo que algunas de las variables será relativa, es decir, generar un informe del mes pasado, por ejemplo)

Así que mi pregunta es ¿Debo usar un motor de informes o no? (Jasper, Pentaho, Birt)

Mis conductores están aquí -La lógica de informes va a cambiar, pero va a ser cambiado por los desarrolladores. Será una lógica compleja por lo que será más fácil de hecho en código en Java. -El informe tiene que ser guardado y enviado por correo electrónico en formato Excel. -La tarea de informe será enorme (algo donde ETL podría ser útil) requisitos de información -futuros no son una consideración aquí, el sistema pasará una reescritura si tiene que ser genéricos y extender factible.

Yo sólo podría crear una entidad llamada informe, almacenar su tipo (una enumeración) y la lista de parámetros (de la URL de descanso) y otra metardata (que creó, en qué fecha, etc., dónde enviar, y se almacenan los parámetros relativos) y luego, cuando algún tipo de procesamiento se ha hecho, almacenarlo en DB, sólo para recuperar los datos procesados ??por el controlador para consumir. Se simplifica en gran medida las tecnologías implicadas (yo uso MVC primavera y que debería ser suficiente con una pequeña pizca de POI). Pero me pregunto si el uso del motor de informes sería más simple.

¿Fue útil?

Solución

Mi experiencia con Jasper y Birt (y los informes comerciales de Barlovento) es que no le ayudará mucho con el cálculo de números parte del informe; que son los más adecuados para la presentación de los datos que ya se ha transformado en una estructura adecuada. Jasper, Birt e informes de barlovento puede manejar fácilmente los tiempos totales y promedios, pero los cálculos más complejos de lo que son un verdadero dolor (y puede ser imposible en función de sus cálculos). No estoy familiarizado con Pentaho.

En su situación que pondría en práctica cualquiera de los calcuations en código Java personalizado, o en un proceso de ETL.

A continuación, podría utilizar un motor de informes para presentar los resultados de los cálculos en formatos HTML y Excel. Pero si usted no tiene Jasper o Birt, etc, ya integrado en su aplicación, entonces yo no recomendaría la adición de uno sólo para esto. Sería más rápido para escribir manualmente los datos del informe mediante JSP y PDI, respectivamente. jasperreports y Birt son bastante fáciles de crear, pero sólo una vez que tenga el motor de informes integrados correctamente!

Otros consejos

Nunca he usado Birt, pero he utilizado Jasper, y mi único comentario sería: el uso de un motor de informes tiene una curva de aprendizaje, y agrega sobrecarga de su propio. Así que si estás haciendo algo de una sola vez informe, y si el diseño del informe real es bastante simple, no podrá ganar mucho de un motor de informes. Pero, por el otro lado, Jasper es realmente bueno en cosas como lo que le permite escribir la lógica de una vez, a continuación, generar fácilmente su informe en varios formatos (como Excel).

Si hay una fuerte exigencia de que el informe generado "un aspecto muy" y si tiene un diseño muy complejo, y si se necesita generar una gran cantidad de formatos, entonces usted puede encontrar el motor de informes valiosos.

Si se puede justificar el gasto de un par de horas en ella, descargar Jasper (o Birt o lo que sea) y ejecutar a través de algunos de los tutoriales / demostraciones y obtener una idea de ella. Eso probablemente habrá más valioso para usted que todos los comentarios que llegue aquí.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top