Generador de Informes

Escritorio
Buenas,

Estoy pensando en portar una aplicación de gestión de Java a Python, por temas de velocidad. Más o menos ya tengo claro cómo hacerlo (wxPython, etc), pero tengo el problema de la impresión: en Java usaba el JFreeReports (http://www.jfree.org), pero en Python no conozco ningún sistema similar.

Existe algun proyecto parecido? Lo último que quiero es tener que escribir todo un generador de informes desde cero, ya que en este caso continuría con el Java...

Opciones de visualización de comentarios

Seleccione su manera preferida de mostrar los comentarios y haga click en 'Guardar opciones' para activar sus cambios.

Open Report

Parece ser que reportlab es una opción bastante popular. Si quieres utilizar esa libreria pero prefieres tratar con XML en vez de código Python puedes considerar Open Report.

Está formado por 2 utilidades:
  • tinyrml2pdf, libreria Python que genera un fichero PDF a partir de un documento RML, que no es sino un dialecto XML que describe la apariencia visual que ha de tomar el PDF y que incluye los datos a mostrar. Se supone que el programador ha de preocuparse de crear el RML de alguna forma.

  • the open reporting server, se trata de una aplicación Python/OSE accesible de forma remota via SOAP, XML-RPC, etc... para adquirir datos (p.e. de una base de datos) y aplicar reglas de formateo que se utilizarán para generar ficheros RML que se transformarán en PDFs para su posterior difusión/impresión.

Creo que deberias chequear

Creo que deberias chequear reportlab del cual creo que te serviria solo lee la documentacion.
Lo mas seguro es que no se adapte 100% a lo que necesites, pero al afectuar el analisis y el diseño sentaras las bases logicas de un motor de informes, y podras en algun futuro crear una solucion que se adapte 100% a tus necesidades. Yo soy de la filosofia de que no hay como lo que uno mismo hace, aunque guardando las distancias para software muy complejo.

hombre, yo encuentro un poco

hombre, yo encuentro un poco radical esto de que no hay como lo que uno mismo hace... hacer un generador de informes es un follón, y yo simplemente lo quiero para poder hacer listados, albaranes y facturas... ya te digo, en Java usaba el JFreeReport, y me funciona a la maravilla... lo que pasa es que quiero provar un poco el Python, ya que encuentro muy lento el Swing, y a ver que tal... (no, no me interesa cambiar a SWT... le heché un vistazo, y sólo por el hecho de tener que destruir tu mismo los objetos ya no me interesa, lo considero un paso atrás en el Java...)

otra cosa, para la gente que tiene más experiéncia en GUI's con Python, que me recomendais, wxPython o PyGTK+? Es importante el hecho de que tiene que la aplicación tiene que funcionar en Windows, Linux y Mac OS X. Ah, y en alguna de estas dos librerías gráficas las tablas funcionan igual que en el Swing de Java (cogiendo los datos mediante TableModel's...)

Muchas grácias,

Marc

No Reinventar, Si Refactorizar

En realidad lo que digo es que cuando usas un software digamos generico, en este caso un generador de informes, y lo necesitamos adaptar a nuestras necesidades, se debe analizar el software tal como esta mas si no existen diagramas uml y documentacion por el estilo.
Personalmente me gusta tratar de entender la logica de las aplicaciones de las que mas hecho mano, pensando en que algun dia necesitare desarrollar algo muy parecido.
Aunque claro es solo una sugerencia, y claro que no es factible crear todo lo que uno use en su computadora digamos so, drivers, bd, etc.

El software libre me sorprende cada dia mas

Re: Generador de Informes

Pues me temo que la cosa está bastante mala.

Por lo que yo sé no hay ningún diseñador/gestor de informes nativo para Python. La gente suele 'apañarse' de varias formas:
  • basándose en la creación/impresión de páginas HTML 'al vuelo'
  • basándose en la creación/impresión de documentos PDF por código utilizando librerias del estilo de reportab (como comentaba txarli)
  • basándose en la creación por código de documentos LaTeX y su posterior transformación a PDF, RTF, HTML o TXT
  • utilizando la infraestructura del paquete Python GNUe Reports que, basándose en las especificaciones contenidas en documentos XML que describen las características del informe y en la utilización de su API para la fusión de datos, genera documentos (listados) en formato TXT, HTML, CSV y, en el futuro, PDF, PS y Excel. No tiene diseñador y está en un estado de desarrollo muy temprano.
  • etc...
En tu caso, además, si trabajas con la libreria wxPython, puedes utilizar las clases de soporte de impresión de wxWidgets, opción que te obligaría a trabajar 'a pelo' (posibilidad que ya he visto que descartas).

reportlab.org

Hola, un saludo a todos en mi estreno en pythonhispano.org, enhorabuena por este proyecto.

No estoy muy puesto en el tema, de hecho estoy comenzando con Python, tal vez te puedan ser utiles estos dos links:

http://www.reportlab.org/

http://www.faqts.com/knowledge_base/view.phtml/aid/11487/fid/199

Un saludo y suerte.