Birt - 1.0

Extension ID

com.castsoftware.birt

What’s new?

See BIRT - 1.0 - Release Notes for more information.

Description

This extension provides support for BIRT (Business Intelligence and Reporting Tools) technology for JEE projects (see https://eclipse.github.io/birt-website/external link). This extension has two parts:

  • a standalone part which analyzes files with following extensions:
    • .rptdesign
    • .dashboard
    • .datadesign
    • .rptlibrary
    • .gadget
    • .rpttemplate
  • a part which works together with the JEE Analyzer. This part creates the links from the Java methods to the BIRT reports created by the standalone part.

In what situation should you install this extension?

If your JEE application source code uses BIRT Report files (*.rptdesign), you should install this extension.

Function Point, Quality and Sizing support

Feature Supported? Comments
Function Points (transactions) ✔️ Indicates whether the extension provides support for OMG Function Point counting and Transaction Risk Index.
Quality and Sizing Indicates whether the extension can measure size and whether a minimum set of Quality Rules exist.

Compatibility

This extension is compatible with:

CAST Imaging Core release Supported
8.3.x ✔️

Download instructions

You will need to manually install the extension using CAST Console.

What results can you expect?

Objects

Icon Description
BIRT Report
BIRT Dashboard
BIRT Datamart
BIRT Library
BIRT Gadget
BIRT Template
BIRT SQL Query
BIRT CSV Data
BIRT Data Set
BIRT Component
BIRT Cube
BIRT Report Call

Reports, Dashboards, Gadgets, Templates

BIRT reports, dashboards, gadgets, templates have same structure. They can be considered as reports or parts of reports. They may refer to each other through include links.

Example Dashboard code:

<property name="reportName">^/Report Designs/MySpendDetail.rptdesign</property>

Data sets, SQL Queries, Csv data

BIRT data sets can be defined in any report or library. They may define an access to a database or .CSV through SQL code. Data sets may be called from any object through call links.

Example Report code:

<oda-data-set extensionID="org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet" name="Charges Data Set" id="4765">
    <xml-property name="queryText"><![CDATA[select ch.transaction_date, ch.description, ch.amount, c.locale
        from all_charges ch inner join cust_info c on (c.customer_id=ch.customer_id)
        where c.customer_id = ?
        and ch.statement_date_id=?]]>
    </xml-property>
</oda-data-set>
...
<property name="dataSet">Charges Data Set</property>

Libraries

BIRT libraries contain components which may be called from other objects through use links.

Example Library code:

<components>
    <extended-item extensionName="Chart" name="Merchants-Chart" id="55">
    </extended-item>
</components>

Accompanying Dashboard code:

<property name="reportlibrary">{"reportLibrary":"/Applications/SFWealthApp-21Jul/SF Wealth.rptlibrary","reportItem":"Merchants-Chart"}</property>

Report calls

Reports may be called from java code where following method calls can be found:

org.eclipse.birt.report.engine.api.ReportEngine.openReportDesign

com.axelor.apps.ReportFactory.createReport

Example Java code:

import com.axelor.apps.ReportFactory;
...

public void printMove(ActionRequest request, ActionResponse response) throws AxelorException {
 String fileLink =
        ReportFactory.createReport(IReport.ACCOUNT_MOVE, moveName + "-${date}")
            .addParam("Locale", ReportSettings.getPrintingLocale(null))
            .addParam(
                "Timezone", move.getCompany() != null ? move.getCompany().getTimezone() : null)
            .addParam("moveId", move.getId())
            .generate()
            .getFileLink();
}

Rules

No rules are provided with this extension.