Monthly Archives: October 2009

Smokin’ new Parameter: Formulas, Hidden Parameters, and relaxed Validation

With Citrus, we added static parameters. Although this already brought us closer to our goal to total world domination for our reporting tool (Ya know, you have to have some small goals to make a life worthwhile) it is not enough to solve the more complex problems. Therefore, the Lemonade release pushes the frontier a bit further and allows a whole range of new features.

Hidden Parameters

By selecting a tiny little check-box, parameters can now be excluded from the UI-generation. The parameter itself still behaves like any other parameter and thus takes part in the formula-calculations and is part of the validation.

Parameter Validation can be loosened

When this flag is set to false, the validator will accept other values than the ones that have been specified in a list-parameter. With relaxed validation, you can easily write WHERE conditions, that accept partial matches or contain “LIKE” clauses. For the sake of security, we none-the-less default this feature to strict-checks.


Every List-Parameter can now have computed display-texts. This way, you are no longer limited by what your datasource can produce, and even a simple data-source like an XML file or a static table-datasource can produce better looking prompts.

Post-Processing Formula

A post-processing formula processes the parameter-input before it gets validated or passed into the report. The post-processing can either be defined on the parameter itself or can be defined as an extra field by using a hidden parameter. The computed value will still be validated by the engine and thus using formula’s does not necessarily mean you have to fear that illegal input comes through. Formulas allow you to access runtime information, like the current user’s roles or the user’s name via the ENV(..) function.

All these features are available in the CI-build. To make use of them in the platform, you will have to upgrade the reporting-engine and the reporting-plugin of the 3.5-GA BI-server.

Next stop: Dynamic mondrian roles and dynamic security information for JDBC datasources.

Work on the next release started: Lemonade is brewing

Citrus-PRD 3.5.0-GA is out of the door, and as our new product gets used in more and more real-world scenarios, new issues and bugs start flowing in.

Therefore, our next release will continue to concentrate on bug-fixes and ironing out the rough edges instead of shaking the boat with new large scale features. Sorry, crosstab-crows, you’ll have to wait a bit longer. The issues addressed so far already sparked some API-changes so that the implementation of the fix can be as efficient as possible. That makes it impossible to slap a “patch” release label on the code, therefore we will number the codeline 3.6 instead of 3.5.1. As usual, you can follow our progress in JIRA. The release should be ready to go at the end of November.

The project name for this release will be Lemonade, as it is a lot of Citrus with a few bits of Sugar.

The major feature work will concentrate on implementing

  • formula-parameters to post-process incoming inputs (PRD-2207)
  • hidden parameters, so that you have control, which parameters end up in the UI (PRD-2208)
  • MDX roles(PRD-2071)
  • A set of new “MDX (Custom)” datasources to allow the same degree of flexibility we offer for the JDBC datasources. (PRD-2212)
  • and of course, many, many bug-fixes. (The more you report, the more will be fixed.)

Pentaho Reporting 3.5-GA is available on SourceForge

After a long, long time of development, and a healthy amount of hacking and slashing, Pentaho Reporting 3.5 is now ready to download from Sourceforge.

Let the world hear our battle-cries:
“No more XML editing!”
The report-designer is now able to edit every aspect of our report-definition-format. There are no blank spots in our tool any more – if the reporting engine can do it, you can define it inside the Report-Designer.

“No more redundant XActions!”
Simple, standard reports with or without parameters should not need an extra document to maintain. With Citrus, the report-definitions contain both the data-definition and the parameter-description so that XActions can be omitted. Now you only need one tool and create one artefact to get your parametrized reports on the BI-Server.

“One Fileformat to rule them all”
Gone are the days where publish produced a incomprehensible XML file that cannot be edited safely from the report-designer. Beginning with the Citrus-Release, the report-designer uses a single fileformat for both client-side editing and server-side execution. This finally enables true round-trip processing, where you can download/open report-definitions directly from the server to edit them locally to re-publish them later in one go.

This release is centred around the all-new and all-shiny report-designer. The most visible features of this release are:

  • Side-By-Side sub-reports
  • Parameters in the report-designer
  • New datasources: Scripting, PDI and a static Table-datasource
  • Expanded formula-capabilities
  • Bar-Code and Sparkline elements

This release also features a new XAction-less mode of operation for simple parametrized reports. For the more complex cases, XActions are still available and the new report-definitions can be used via a new XAction-component to solve all the mind-boggling complicated use-cases.

Go grab your copy from SourceForge today!…/3.5.0-stable/