Like what you see? Have a play with our trial version.

Overview

Using Yellowfin you can use a BIRT XML report editor such as eclipse to create pixel perfect crystal style reports. This definition can be loaded into Yellowfin and use the infrastructure such as security and multicast for managing the report.

Why would I use a BIRT Report

A BIRT report may be used if you want:

  1. To create a production / banded style report such as an invoice.
  2. Create specific report layouts which are not otherwise catered for in Yellowfin.

Create BIRT Report

  1. Create your BIRT Report XML file using a 3rd party tool such as eclipse.
  2. Select ‘I want to create the report using BIRT Reports’ on the report initialisation page
  3. Select the data source that the Report will run from.
  4. Click the next button to continue to the report definition load.
  5. On the BIRT Report page you will be prompted to load your report definition file.
    1. At this stage you can make a comment about the file for future reference.
    2. On the right hand side navigation you can make selections for report broadcast and saving the report details.
  6. Click the browse button to search your file system for your BIRT report definition XML document.
  7. Click Confirm to Continue.
  8. On Confirm you will see the file definition displayed. This information is useful if you return to the report later for editing.
  9. If your XML includes links to images Yellowfin will prompt you to load these images in separately.
    1. Click the browse button to search for your images. Each image will have to be loaded separately.
  10. If you wish to edit or replace the XML file click the replace file checkbox. Add the new file in.

 

 

Enable BIRT Reports in Yellowfin

 

The BIRT engine is not included in Yellowfin installations. Therefore, you will need to enable it.

  1. Double check which version of BIRT adapter is installed with your Yellowfin:
    1. Go to Yellowfin/appserver/webapps/ROOT/WEB-INF/lib folder and look for the yfbirtxxx.jar file. 
    2. Note the version it has, as indicated by the digits in the file name. (Yellowfin 7.3+ is shipped with 4.3.1 BIRT adapter. Earlier adapters can be found in the development folder. If you want to run Yellowfin with an earlier BIRT engine, replace yfbirt431.jar with the corresponding one from the development folder.)
  2. Go to the BIRT website http://download.eclipse.org/birt/downloads/ to download the BIRT Runtime (also called the Report Engine). The filename should be birt-runtime-xxx.zip. Ensure that you download the version corresponding to Yellowfin BIRT adapter (yfbirtxxx.jar). For example, for Yellowfin 7.3+, you need to download BIRT Runtime Engine 4.3.1: 

    http://www.eclipse.org/downloads/download.php?file=/birt/downloads/drops/R-R1-4_3_1-201309181142/birt-runtime-4_3_1.zip 

  3. Unzip this file into any directory on your Yellowfin server (for instance, BIRT). It will create a sub-directory called "birt-runtime-xxx". 
  4. Edit the file Yellowfin/appserver/conf/catalina.properties. Find the definition of the shared.loader property and add the path to lib folder of BIRT Report Engine:
    shared.loader= "C:/BIRT/birt-runtime-4_3_1/ReportEngine/lib/*.jar"
  5. If your original installation of Yellowfin was from version 4.0 or earlier, click on the link below to perform an additional step:

     For Yellowfin versions 4.0 or older

    If your original installation of Yellowfin was from version 4.0 or earlier, you may have additional BIRT libraries in the lib directory. These must be removed to support the new BIRT adapter. Please remove any of these libraries that you find in the lib directory:

    • chartengineapi.jar
    • com.ibm.icu_3.4.4.1.jar
    • com.ibm.icu_3.8.1.v20080530.jar
    • commons-cli-1.0.jar
    • commons-codec-1.3.jar
    • coreapi.jar
    • crosstabcoreapi.jar
    • dataadapterapi.jar
    • dataaggregationapi.jar
    • dataextraction.jar
    • dteapi.jar
    • engineapi.jar
    • flute.jar
    • js.jar
    • modelapi.jar
    • modelodaapi.jar
    • odadesignapi.jar
    • org.apache.commons.codec_1.3.0.v20080530-1600.jar
    • org.eclipse.emf.common_2.2.0.v200606051102.jar
    • org.eclipse.emf.common_2.4.0.v200808251517.jar
    • org.eclipse.emf.ecore.xmi_2.2.0.v200606051102.jar
    • org.eclipse.emf.ecore.xmi_2.4.1.v200808251517.jar
    • org.eclipse.emf.ecore_2.2.0.v200606051102.jar
    • org.eclipse.emf.ecore_2.4.1.v200808251517.jar
    • sac.jar
    • scriptapi.jar
  6. Now you can restart Yellowfin, and you should see the following in the startup logs:



 

Keep in mind that the BIRT Report Engine may require additional memory. Refer to this Yellowfin Community forum post regarding how to increase JVM memory for Yellowfin: https://community.yellowfinbi.com/knowledge-base/article/what-is-jvm-max-memory-and-why-should-i-care

Yellowfin may require considerable amount of time (more than 10 minutes) to load BIRT Report Engine.

 

Using JDBC drivers with BIRT reports

With earlier BIRT versions, you need to add JDBC drivers to BIRT. If ReportEngine directory does not have “plagins” folder, skip this step, you do not need to copy JDBC drivers.

The JDBC drivers used by Yellowfin will not automatically be available to BIRT reports. You need to copy any JDBC drivers that you use into the BIRT runtime directory.

You can find the drivers that Yellowfin uses in the Yellowfin/appserver/webapps/ROOT/WEB-INF/lib/ directory. Common driver libraries are:

  • JTDS driver for MS SQL Server and Sybase: jtds.jar
  • MySQL driver: mysql-connector-java-3.1.11-bin.jar
  • Oracle driver: ojdbc14.jar
  • PostgreSQL driver: postgresql.jar
  • DB2 driver: db2jcc.jar, db2jcc_licence_cu.jar

Copy the required drivers into the following directory:

/BIRT/birt-runtime-4_3_1/ReportEngine/plugins/org.eclipse.birt.report.data.oda.jdbc_version/drivers/

Restart Yellowfin to pick up the new drivers.