Reporting in Apache OFBiz® and the OFBiz Flexible Reports, a new and important feature
Reporting in OFBiz and the new OFBiz Flexible Reports
Reporting in OFBiz, a brief history
Initially, OFBiz came with JasperReports as its main reporting tool. But due to licensing issues, it was removed when OFBiz became part of the Apache Software Foundation. OFBiz needed to generate reports so at that time only Apache FOP was available until Birt was added to OFBiz as a component.
Apart their licenses, Birt and JasperReports are roughly comparable. Notably, they both offer a report editor, respectively Birt Report Designer and iReport Designer. Some people prefer Birt, while others prefer JasperReports. When making a choice, there is though a major difference between them. JasperReports works on a pixel basis, like a desktop GUI, while Birt works on relative positions, like HTML. This is an important point, because it makes them incompatible, meaning that you can't convert a report from one format to the other.
After an initial effort in 2007, the birt component was finally integrated into OFBiz in 2009. It was later refactored because of few issues. And more recently, because it was not correctly licensed, a minor part, the Birt Web Viewer was removed.
But the main purpose of this blog post is to announce the creation of the OFBiz Flexible Reports. It's a new feature added recently which will be officially available with the R17.12 branch first release and documented inside the birt component with Markdown files (Asciidoc in trunk). These Markdown files are also used to render a wiki page where using them is explained in more detail.
But in few words, why are the new OFBiz Flexible Reports important?
When developing an application, the reporting part is often neglected. This is because, though it seems trivial to create reports, it's often more complicated. And reporting is almost always a major function in displaying and using information from any application software.
To create reports in OFBiz with Birt before the OFBiz Flexible Reports, you had to:
- completely create the design of your report using the Birt Report Designer.
- Code in Java how to collect and insert the data into the report
In other words, you had to create a complete .rptdesign file using the Birt Report Designer. And once done as a single piece, you could not change your report without changing the .rptdesign file. This was time consuming and something that users could not easily adapt to their needs.
As explained in the OFBiz documentation, with the OFBiz Flexible Reports you can:
- automatically create a .rptdesign file based on an Entity, an Entity View or even a Service.
- It's then very easy, using the Birt Report Designer, to add the data set you want to use.
- Later, the report design can be easily enhanced by the user with the Birt Report Designer.
Now you can see the advantages that OFBiz Flexible Reports has over what was previously available in OFBiz.
Thanks for taking the time to read this post and please feel free to provide your comments and feedback. For any questions please use the Apache OFBiz User Mailing list.
This blog post was written by Jacques Le Roux, Apache OFBiz PMC Member, Committer and ASF Member.