Consulting

BIRT, Jasper, Pentaho - Comparison Matrix

Each of the products reviewed has had a major release recently, including Jaspersoft 4, Pentaho BI 4 and BIRT 3.7. Innovent will be releasing an update to our comparison in February 2012 so please check back.

BIRT 2.6.0 Jaspersoft 3.7 Community Pentaho 3.5
Website www.birt-exchange.com www.eclipse.org/birt www.jasperforge.com reporting.pentaho.com
License Eclipse Public License GNU Lesser General Public License GNU Lesser General Public License
REPORT DESIGNER BIRT Report Designer 2.6.0 Jasper iReport 3.7 Pentaho Report Designer 3.5.0 stable
Designer Platforms Windows, Linux, Mac OS X Windows, Linux, Mac OS X Windows, Linux, Mac OS X
Eclipse Plug-in Available Y N
JasperAssistant is available commercial, non-free, third-party plug-in
N
Note that the Pentaho Design Studio, an Eclipse plug-in, is not a report designer.
NetBeans Plug-in Available N Y N
Standalone Java Client Available Y Y Y
Design Paradigm Web Page Design paradigm: frames, tables, lists banded reports, pixel positioning, banded reports, pixel positioning
Report Compilation Not required Required Not required
Report Format XML
(.RPTDESIGN files are pure XML)
.JRXML report design files are compiled into .JASPER report files, which are Java Byte Code. You then deploy the .JASPER file. XML
(.PRPT report file is a ZIP that contains the XML file plus other resources)
Report Designer Components
Common Report Designer Components: Report Editor Palette Data Explorer Property Editor Outline view report structure Report Preview Expression Builder Report Problems Chart Builder Script Editor Y Y Y
Sub-reports Y Y Y
Side-by-side report components Y Y Y
via sub-reports
Tables Y N N
Cross-tabs Y Y “Experimental” in Pentaho 3.5
Sorting Horizontal Panning Y Always scroll down, even if crosstab expands side-to-side N
Newspaper / multi-column layout N Y N
Hyperlinks within a report Y Y Y
Actionable charts Y
drill-down, hyperlinks, mouse-overs
Partial – hyperlinks N
Cascading Style Sheets (CSS controlled format) Y N N
Conditional Formatting Y Partial Y
Data Sources
Multiple data sources and queries per report Yes, plus support for joining them Only via sub-reports (one data source per sub-report) Only via sub-reports (one data source per sub-report) or in charts
Support for joining multiple data sources in the Designer Y N N
Report can further re-sort, filter, or group data returned from a query. Y Partial – Jasper can further manipulate data sets before building cross-tabs, but not for regular tables. N
Data Sources Types  - Database JDBC
 - XML File
 - Web Services
 - Flat files: CSV,SSV,PSV,TSV
 - Custom data source
 - OLAP MDX
 - Scripted Data Source: POJO,EJB,Hibernate,XML Stream
 - Database JDBC
 - XML File
 - CSV File
 - Microsoft Excel
 - JavaBeans
 - Hibernate HSQL
 - Spring Hibernate EJBQL
 - XMLA Server
 - Mondrian OLAP
 - Text File
 - NetBeans JDBC
 - POJOs
 - Custom
 - Remote XML files
 - Database JDBC
 - XML files
 - Table
 - OLAP MDX
 - Pentaho Metadata
 - Pentaho Data Integration
 - OLAP MDX
 - Scripted Data Source: POJO,EJB,Hibernate
Query Designer Y Y Y
Graphical Query Designer Prototype only Y (SQL Leonardo) Y (SQL-Leonardo)
Scripting  - JavaScript
 - Java Event Handlers
 - JavaScript
 - Groovy
 - Java
 - JavaScript
 - Bean Script Framework (BSF)
 - Bean-Script Host (BSH)
 - Single Value Query
Output Formats
Paginated HTML Y Y Y
Unpaginated HTML Y N N
PDF Y Y Y
Excel (XLS) Y Y Y
XML Y Y Y
Plain Text Y Y Y
RTF Y Y Y
Powerpoint (PPT) Y N N
CSV Y Y Y
Postscript Y Y Y
OpenOffice report types (document & spreadsheet) N Y N
Microsoft Office 2007 report types (DOCX, XLSX) N Y N
Flash (SWF) N Y
viewed within Jasper Server’s flash report viewer
N
Custom Formats Y Y Y
Geometric shapes & lines Y Y Y
Barcodes Y Y Y
Charts
Chart Wizard Y Partial two-step wizard, rest is a big dialog box N
Chart Interactivity Y
mouse-over, tool tips, hyperlinks, etc.
Y
hyperlinks only
N
Chart themes Y Y N
Precise control over format of all control elements Y N N
Charts types that all have: 2D 3D Pie Multi-pie Bar Stacked Bar Bar XY Line Line XY Area Area XY Stacked Area Bar Line Bubble Scatter Plot Multi-Axis Y Y Y
Study Charts Y N N
Ring Chart N N Y
Tube chart Y N N
Cone chart Y N N
Pyramid Y N N
Time Series Y Y N
Meter / Gauge Y Y N
Waterfall N N Y
Step N N Y
Step Area N N Y
Difference Y N Y
Radar Y N Y
Thermometer N Y N
Candlestick / Stock Chart (High/Low) Y Y N
Gantt Y Y N
Survey Scale N N Y
Bar Sparkline N N Y
Line Sparkline N N Y
Pie Sparkline N N Y
Report Parameterization
Static Parameters select parameter values from a hard-coded list of values Y Y Y
Dynamic Parameters users select parameters from a list of values that came from a database Y Y
Cascading input controls are report independent
Y

Cascading parameters
 linked data driven prompts e.g.
 - Country
    |- State
        |- City

Y Y Y
Calendar date-picker for parameters of type date. Y Y Y
Can specify default values Y Y Y
Drop-down list boxes Y Y Y
Radio buttons Y Y Y
Check boxes Y Y Y
Combo boxes Y Y Y
Aggregates / Summarize Data
Common Aggregations  - Average
 - Count
 - Distinct Count
 - First
 - Is-Bottom-N
 - Is-Botton-N-Percent
 - Is-Top-N
 - Is-Top-N-Percent
 - Last
 - Max
 - Median
 - Min
 - Mode
 - Moving Ave
 - Percentile
 - Percent-Rank
 - Percent-Sum
 - Quartile
 - Rank
 - Running Count
 - Running Sum
 - Standard Deviation
 - Sum
 - Variance
 - Weighted Average
 - Average
 - Count
 - Distinct Count
 - Sum
 - First
 - Lowest (Minimum)
 - Highest (Maximum)
 - Standard Deviation
 - Variance
 - System
 - Average
 - Count
 - Count by Page
 - Group Count
 - Sum
 - Minimum
 - Maximum
 - Sum Quotient
 - Sum Quotient Percent
 - Calculation
 - Count for Page
 - Sum for Page
 - Sum (Running)
 - Count (Running)
 - Group Count (Running)
 - Count Distinct (Running)
 - Average (Running)
 - Minimum (Running)
 - Maximum (Running)
 - Percent of Total (Running)
User Defined Functions / Expressions Y
Java, JavaScript
Y
Java, JavaScript, or Groovy
Y
OpenFormula (Excel-like), Java
User Define Aggregates Y Y Y
Designer provides “code hooks” (aka callbacks, event handlers. …) for each report element. Y Partial – only the report itself has callbacks – not at the per-element level. Not in Designer.
Support for Reuse Within Designer

Templates
(custom report starting points)

Y Y Y

User-defined Libraries
(reusable report pieces )

Y N N

Styles
colors, fonts, borders, margin…

Y Y Y
CSS Y N N

See Also:

BIRT vs Jasper

BIRT vs Pentaho