Comment 1 for bug 510834

Revision history for this message
Borja López Soilán (NeoPolus) (borjals) wrote :

Hi Nhomar.

Take a look at the code in "bin/report/report_sxw.py" (/home/nhomar/openerp/stable/5.0/instancias/ingelub/server/bin/report/report_sxw.py), it is there where the creation of ODT or HTML files is done.

The report engine, currently is mostly an XML parser that reads RML files (based on ReportLab:http://www.reportlab.com/software/opensource/ though not all features are supported: https://bugs.launchpad.net/openobject-server/+bug/509266) and either writes a transformed XML file like a HTML or ODT file (after all ODT files are compressed zip archives with several xml files inside), or writes a PDF file in a similar way to ReportLab. In the "bin/report/render" you can find the code that does the XML transformation.

Some people have extended the parser with modules, so it can:
 - Process jasper reports files (using Jasper Reports engine). Take a look at the server modules in https://launchpad.net/openobject-client-kde
 - Process OpenOffice files directly (no RML step) and output ODT or PDF files. Take a look at https://launchpad.net/report-openoffice
 - Even we, at Pexego, developed our own OpenOffice module (it hasn't been released yet, as we are considering merging with the previous addon) that can read any format supported by OpenOffice and write any format supported by OpenOffice (you can do ODT to PDF, but you can also have an ODS template that output XLS files, or a RTF template that outputs DOC files...), and even supports subreports [But this engine has a 'problem' that the previous one does not: it requires OpenOffice to be installed on the server]