Knowledge Base (Display) Knowledge Base (Display)

Release notes v3.1

Overview

#BIRT 4.5

#SVG enhancements

#Better performances

#New jquery UI css

#Configuration portlet enhanced

#Client-side events

#Many minor fixes and enhancements

 

Upgrade to BIRT runtime 4.5.0

Upgrade from BIRT 4.4.2 to the very latest BIRT runtime 4.5.0. 
  • BIRT runtime is upgraded from 4.4.2 to the latest version 4.5.0. There are significant improvements of the report engine, the chart engine and some third-party libraries in this version. Please visit Eclipse BIRT issues to check the changes.
  • Your existing reports should still perfectly run with BIRT runtime 4.5.0. There are currently more than 80 reports uploaded on visioneo.org, developed with various Eclipse designer versions:
    • v3.7
    • v4.3.1
    • v4.4.2
    • v4.5.0

None of these reports faced to a problem after this upgrade.

 

SVG charts enhancements

Visioneo support for BIRT vectorial charts has been dramatically improved!

 

  • Drillthrough actions in SVG charts are supported
  • Multiple drill-actions on each data-point are supported
  • Interactivity tooltip fixed in IE
  • Resizing ratio fixed in Firefox
  • SVG and Interactivity are enabled by default in portlet preferences. As introduced in version 3.0, the engine is automatically switching to an alternative format when svg is not supported by user's web-browser

With SVG format, your interactive BIRT charts are more responsive than ever for any output device: unlike other formats such .jpg or .png, SVG hyperlink actions are still fully functional when charts are dynamically resized (for example when a tablet device orientation has changed)

 

           

Please visit this article for more informations about how to design responsive BIRT reports.

Better performances

A significant bottleneck has been identified and fixed when BIRT engine runs in a J2EE context, a contribution to the Eclipse project is on prepare. By visiting all demo examples you will probably notice great enhancements in generation time both in HTML and PDF formats. The most tremendous improvement has to do with interactive charts!

As a reminder, BIRT charts are generated during the "rendering" step. Performances have been drastically improved for charts having interactivity actions such drillthrough and URL hyperlinks. For instance the generation time of this scattered chart and the bubble chart has decreased by 75% in version 3.1! On this Liferay demo server the rendering step duration of a such chart takes on average only 250 ms with Visioneo v3.1. 

 

 

Run parallel reports generation with this demo page, and see how the rendering step is efficient although the underlying Liferay server has only 1Gb Heap memory!

 

A substantial portion of the generation time during the "loading" step is due to database queries: now the economic sample database (MySQL) has more than 12 million rows, making optimization quite difficult with so few memory available. However the storage engine of the largest table has been recently changed to "MyISAM", leading to great improvements.

By the way, BIRT report developers might be very interested by a new sample report designed as a unit test. It is used to evaluate charts generation time across multiple platforms and to measure the impact of interactivity actions. This report doesn't have resources dependencies and it makes use of the sample BIRT "Classic models" database, therefore it can be run as it is in any context having a BIRT runtime:

 

New jquery UI CSS 

  • Optimized css (-30%): Default jquery themes included in Visioneo app have a total size of 11Kb compressed (58 Kb uncompressed). Most of css rules have been factorized to avoid redundancy and consequently optimizing performances.
  • For great performances, .sass caches are generated using Liferay plugin SDK
  • New secondary UI theme based on blue shades.  You can of course include in minutes your own favorite jquery theme.

Configuration portlet enhanced (Professional Edition)

In Liferay 6.2+ portals, a new button is added to Visioneo configuration portlets. It offers an easy way to select a 'Document & Media' folder as BIRT report path!

Clicking this button opens a native Liferay selection browser:

 

In Visioneo Community Edition (CE) these configuration portlets are now disabled. It was an unnecessary source of confusion because only the professional edition actually takes advantage of this feature. For a demo purpose it is still possible to enable them through liferay-portlet.xml in Visioneo CE.

Client-side events

A new event is published to other portlets on a same page when a report is ready. This event object contains all context informations such as parameter values, report name, current page, total page number etc.

It can be handled in a custom portlet with a simple javascript expression:

$vui(document).on("vui-report-ready",function(event){
     console.log("Report is ready! Write a custom code in this function");
     console.log("Total page number="+event.message.report.pageTotalNumber);
})

This mechanism offers many possibilities. For instance, a concrete use case would be to implement a custom page navigation portlet.

Implementing a such custom widget is easier than it might look at a first sight. This demo page makes use of jqPagination plugin, and the javascript code linking this plugin with a Visioneo report is quite "simple" (well, for a javascript developer at least!):

//initialize a pagination widget
$vui('.pagination').jqPagination({
    paged: function(page) {
       if (page!=visioneoManagerIPC.getCurrentPage()){
          visioneoManagerIPC.goToPage(page);
       }
    }
});

//update pagination widget each time a new report is ready
$vui(document).on("vui-report-ready",function(event){
     var widget=$vui('.pagination'), report=event.message.report;
     widget.jqPagination("option","current_page",report.pageNumber);
     widget.jqPagination("option","max_page",report.pageTotalNumber);
})

This is all we need to embed jqPagination plugin! In the code fragment above '$vui' is a jQuery instance. This variable is initialized by visioneo portlet, and it can be used by other portlets on a same page such in this example.

Here is another demo page taking advantage of this custom widget. if you display the native Visioneo toolbar by clicking on the top left corner of the BIRT report, you will see how client-side events work efficiently to keep everything perfectly synchronized:

Minor fixes and enhancements

  • External number parameters (Professional Edition)
    • Allow empty value for non required parameters in native HTML5 display
    • Allow empty value for non required parameters in jquery UI spinner display

Here is a nice example showing how to use external numeric parameters with a scatter chart :

 

 

  • Better logging information when the BIRT engine starts
  • Mutiselect jquery UI widget CSS fixed. You can see it in action in this demo page.
  • Report parameters separator CSS improved
  • Report-design samples have been updated to take advantage of SVG format, in particular those related to drill actions.
  • Client-side console message related to animate SMIL deprecated is now fixed
  • Javascript issue fixed for bookmarks containing a comma
  • Etc.
Tags: release notes
Average (0 Votes)
Most Recent
Release notes v3.2 24 November 2015
Release notes v2.2 19 August 2015
Release notes v1.4.1 06 December 2013
Release notes v1.4.0 03 December 2013
Release notes v1.3.0 13 October 2013
Release notes v2.0 26 September 2013
Release notes v2.1 01 August 2013