Main features of Pentaho Report Designer
The following are some of PRD's principal characteristics:
- Reporting algorithm: PRD avoids compiling reports, a method that other reporting tools use, and combining the report layout with data as it is acquired. Initially, the algorithm calculates and determines how to separate the data into groups, subgroups, and so on, and calculates the height, width, position, and style of the elements (text, images, and so on); later, the data is placed where it belongs in order to obtain the desired output.
- Diverse data sources: This includes JDBC (this allows access to most databases), Pentaho Metadata, Pentaho Data Integration, OLAP, XML, in-line table, Sequence Generator, Query Scripting, Java Method Invocation, Hibernate, Open ERP, CDA, and so on.
- Diverse output formats: These are PDF, Excel, Excel 2007, HTML, RTF, CSV, XML, and Text. PRD renders reports with high image quality.
- Insertable objects: PRD lets you add text fields, labels, images, charts, subreports, shapes, lines, sparklines, hyperlinks, bar codes, and other objects to your reports. Objects are inserted in the UI by simply dragging and dropping.
- Charts: There are two categories of charts that can be added to reports in PRD; they are as follows:
- Sparklines: These are inline charts. PRD supports bar, line, and pie sparklines.
- JFreeChart charts: These are traditional charts. PRD supports bar, line, area, pie, multipie, barline, ring, bubble, scatter-plot, XY-bar, XY-line, XY-area, extended XY-line, waterfall, radar, and XY-area-line charts.
- Parameterization: PRD allows you to define parameters that can be used in different parts of the report; for example, as a filter for a SQL query, as the text of a label, as part of a formula, and as a style attribute, among others. Regarding the type of presentation, PRD provides the following widgets to supply parameter values: drop-down menus, simple-value lists, multivalue lists, radio buttons, checkboxes, single selection buttons, multiselection buttons, textboxes, text areas, and date pickers.
- Formulas and style expressions: PRD allows you to assign a style property according to the value of a formula, expression, or fixed value. For example, if the value of the field "quantity" is greater than 50, you can make the background color of a given shape green. You can also use formulas to create new fields and calculate their values.
- Crosstab report: PRD lets you create powerful reports based on cross tabs using a simple wizard.
- Interactive reports: PRD lets you add interactivity to your reports, making it possible to expand/collapse groups, add hyperlinks to other reports, and so on.
- Wizard: PRD includes a wizard that lets you create a report through simple and intuitive steps.
- Publication: From the PRD UI, you can publish directly to the Pentaho BA Server.
- Java API: PRD includes a very extensive API that lets you execute, create, and modify reports without using the UI.
- Extendibility: PRD lets you add new functionality through the incorporation of plugins.
- Stylesheet support: PRD supports internal storage or external access to CSS3 stylesheets.
- Integration with the Pentaho suite: PRD is easily integrated with the other tools in the Pentaho suite, including Pentaho Data Integration (PDI) and C-Tools (CDF and CDA).
- Pentaho Data Integration: PDI implements a transformation step that lets you execute and parameterize PRD reports; this allows you to implement mailing and report bursting, among many other possibilities.
- Community Dashboard Framework (CDF): This implements a component for working with PRD reports. Community Data Access (CDA) can be added as a plugin PRD, with the goal that our reports can get their data from a CDA connection.
- Abstraction layers: When an end user creates a report, they usually see the process as a whole. The process of creating a report in PRD can be separated into three parts: the selection of data source to use, the design/layout of the report, and the final presentation format. PRD defines two layers of abstraction between these three parties, allowing each party to become independent of the other and the report to be adapted to different contexts and needs. For example, if a report is created based on a data source developed in MySQL and is later published to a Pentaho BA Server connected to a PostgreSQL production database, the report will be adapted to this context and will be able to be executed without change.
The following illustration demonstrates before to publish in Pentaho BA Server using MySQL and a presentation in PDF:
The following diagram illustrates after to publish in Pentaho BA Server using PostgreSQL and a presentation in HTML:
History
Landmarks in the evolution of PRD are as follows:
- 2002: David Gilbert (author of JFreeChart) implements the first version of JFreeReport. Soon after, Thomas Morgner becomes the lead developer. The JFreeReport project is very successful and many people begin to contribute to it.
- 2006: Thomas joins Pentaho, changing the name to Pentaho Reporting. Thomas becomes a developer for the Pentaho Reporting Engine and other suite tools.
- January 2006: Pentaho announces that Pentaho Report Designer (PRD) Wizard is available for creating reports. Mike D'Amour becomes the initial author of this wizard.
- June 2006: Martin Schmid contributes the first version of PRD to the community. From this point forward, the designer is developed in parallel with the engine.
- November 2006: (BA Server, Version 1.6) Pentaho Reporting is integrated with the Pentaho Metadata Engine to create ad hoc reports.
- April 2007: The Pentaho team joins OpenOffice.org to distribute a reports solution for the OOo database tool. This project is led by Thomas Morgner and comes to be known as the Pentaho Reporting Flow Engine.
- December 2007: The development of version 1.0 of the PRD Classic Engine begins.
- March 2008: A native data source is added for Pentaho Data Integration.
- June 2008: The Olap4j data source is added; it provides connectivity to Mondrian and other OLAP sources and the possibility of executing MDX queries. Implementing cross tabs is discussed.
- June 2009: PRD supports Rich Text Format (RTF) and script-based data sources are added (Scriptable Datasource).
- June 2010: The Table of Contents component is added.
- October 2010: The Drill Linking characteristic is added.
- November 2010: Execution environment information is available via ENV Fields.
- December 2010: The development of the Community Data Access (CDA) data source begins.
- January 2011: PRD cache development begins.
- July 2011: Sparklines are added.
- November 2011: Version Checker is added.
- April 2011: 10 years since the creation of JFreeReports.
The evolution of different versions of PRD can be seen in SourceForge via the link http://sourceforge.net/projects/pentaho/files/Report%20Designer/ as follows:
- 2007 – November: Version 1.6
- 2008 – June: Version 1.7
- 2009 – January: Version 2.0
- 2009 – August: Version 3.0
- 2009 – November: Version 3.5
- 2010 – March: Version 3.6
- 2010 – December: Version 3.7
- 2011 – March: Version 3.8
- 2012 – May: Version 3.9
- 2013 – Version 5.0