Eclipse BIRT - A Case study
17. November 2006
Eclipse BIRT is a reporting API and designer for “rapid reporting creation”
. In nearly every application you have the requirement to generate different reports in different output formats. A colleague was faced with that requirement on a J2EE Application and we decided to try BIRT to see if it’s already in a state where you can use it on “real” projects. In the following I want to share my experience with BIRT in that project.
The requirement was the analysis of a questionnaire with a chart. A common use-case. The team already had experiences with Jasper Reports and iText.
Creating the Design with Photoshop
The first step in this project was the design that was created by a designer. The designer had no idea about reporting-techniques and created a screendesign for the reports, that was delivered to the IT-Unit (see Image).
The first touch with BIRT
After receiving the screendesign a short feasibility study was made to see If the screen can be designed in an easy way. We tried some key features in BIRT to get a picture of the tool and were satisfied with the first results.
Workflow for designing reports
We have declared the following workflow for the project. The advantage is the clear dividing of special roles and the parallel work on backend-implementation and BIRT-design.

Scripted Source vs. SQL-Datasource
We decided for scripted source because the person that designed the report didn’t know anything about the application, database or its context. The application uses Hibernate as persistence layer and the database-structure changed very often, that makes the use of a Bean as data source much easier. A great advantage is that you can put complex business logic in your Bean, the report has partially no logic. The tutorial on the BIRT-homepage explains in a very clear way how to use a scripted data source. The developer defined a data-bean initialized it with mock-data (there was no implementation for getting real data) and the designer could start building a report.
Defining CSS Styles
A good point on bird is that you can import style-sheets for your report. It makes the life more easier, because the designer can create the CSS-Styles, you just have to use them.
The BIRT Designer
Eclipse delivers plugins for designing plugins, where you can edit your report-design in wysiwyg mode. We created in a short time satisfactory results, the finetuning costs more time and nerves. We made the experience to design tables, grids, etc with relative widths and heights. Especially for generating PDF reports you’ll come closer to the expected result.
Charting
The charting capabilities of BIRT are in a very advanced state. It was overwhelming how many possibilities you have to set up a chart. It was possible to come very close to the chart the graphic-designer created.
Problems
The designer is sometimes unstable. It has refresh-problems if you change data-set assignments, selections disappear and the property editor loses its content if a property is changed (that is really annoying). Eclipse crashed sometimes because of an OutOfMemory.
Documentation
On the BIRT-Website you can find useful flash-films that explain special features. It’s helpful for a beginner, but the advanced user will miss the help-system as reference book.
Integrating in a J2EE Application.
Very easy
. You just have to follow the instructions on the BIRT-Website. Works perfectly.
Before - After
On the left hand you can see the designed report, on the right hand you can see the html-output of the generated BIRT-Report
PDF-Output
Conclusion
All in all can be said, that the BIRT API is a very powerful tool for designing and creating reports. We’re waiting patiently for the next release in June 2007 where also Excel is supported as an output format. At the moment we plan to integrate BIRT in a RCP-Application.
Download
Download the Report Example as BIRT Project (Java Bean included - 63 Kbyte)
CVS-Checkout (more info)


hello,
an explanation on how did you integrate birt an eclipse rcp would be great!
regards
Comment by olivier — 19. November 2006 @ 12:22
[…] Tom Seidel talks about Eclipse development on his rich client 2.0 blog and talked about his experiences with BIRT. […]
Pingback by Rolling out a Blogroll for BIRT Exchange » Blog - BIRT Exchange — 6. October 2007 @ 00:59
[…] http://www.richclient2.eu/2006_11_17/eclipse-birt-a-cases-study/ […]
Pingback by ILOG BRMS Blogs » Blog Archive » Advanced Rule Studio Reporting using BIRT — 4. February 2008 @ 13:17