Wednesday, February 17, 2010

BIRT: BIRT Report Item Extensions Released by Innovent Solutions

As part of its commitment and involvement with the BIRT project Innovent Solutions, the company I work for, has created a project that offers a few graphical controls to illustrate BIRTs report item extension point. There are two extensions offered in these libraries. The first one is a Dot Bar. The Dot bar provides a quick visual representation of numeric values. This is useful for a quick, at a glance, representation, rather than overwhelm users with numbers everywhere in a report. The second is a Rotating Text graphic element, based off the original rotating text example illustrated in “Integrating and Extending BIRT”. The rotating text is useful when you are trying to conserve space on a report.

These extension elements are available at http://code.google.com/p/birt-controls-lib/.

Installation instructions are provided on the above link, but we will cover this real quick. There are two components necessary to install these into the BIRT Report Designer. There is a bb.birt.controls.xxx.jar, and a bb.birt.controler.ui.xxx.jar. The UI component is necessary for the BIRT report designer to show these new elements in the palette. The other jar contains the necessary runtime libraries for BIRT to know how to use these elements in a report.

The easiest installation method is to use the update site. The update site is provided in the instructions.

Once installed, you will have the two new components available on the Palette.

So, lets say I want to demonstrate these. In the following example, I will create a simple report that will show the offices and employee count for the Classic Cars sample database. Assume I already have the above components installed, and I am using BIRT 2.5.1.

1. Create a new report called newComponentTest.rptDesign.

2. Create a new Data Source using the Classic Cars example database.

3. Create a new dataset from the following query:

select

CLASSICMODELS.OFFICES.OFFICECODE,

CLASSICMODELS.OFFICES.CITY,

(select count('1') from employees where officecode = CLASSICMODELS.OFFICES.OFFICECODE) officecount

from

CLASSICMODELS.OFFICES

4. Right-mouse click on the data set, and choose Insert in Layout.

The report will look like so:

5. Now, select the OfficeCount detail data component, and delete it.

6. Insert a DotBar in the OfficeCount detail cell.

7. In the DotBar dialog, use the following details:

8. Now, remove the OfficeCode column (1st column).

9. In the City Detail cell, remove the City data component.

10. Insert a Rotated Text component into the cell.

11. Use the following properties:

The final report will look something like this:

And when you run the report, it should look like so:

The source for these components are available to be extended as well from the above linked Google Code site.

4 comments:

Khruse said...

BIRT report designer I think it's really a very great tool for reporting. I just wanna to use this quickly. More...

Maurice said...

Hi!

I have a question related to a talk you gave way back in 2008 at EclipseCon, about using BIRT with GWT. Do you happen to have slides or any reading material on this? I'd love to check it out for a project I'm involved in.

Thanks!

John Ward said...

Unfortunatly, I don't have anything except some basic UML diagrams we used to explain some high level design ideas.

I'd be happy to answer any questions you have though, as we have kind changed how we would implement this having gone through the process a few times now, and it would be different than what we did in 2008 :)

SaS said...

I also have been looking for your EclipseCom slides.

The UML would be interesting. Also, s there an example program built with your method?

I want to get field click events and turn them into links to other graphs.

Thanks!
Stuart