Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The prompting piece of the equation is implemented as part of the Pentaho Common UI project. This JavaScript API allows the developer to build a collection of input components that work together to provide prompts for the parameters defined in a Parameter XML Specification.

...

Project Location

You can find the source code for the Pentaho Reporting Web Viewer project here:
svn://source.pentaho.org/svnroot/platform-plugins/reporting-plugin/branches/4.5

The client-side JavaScript can be found at:
svn://source.pentaho.org/svnroot/platform-plugins/reporting-plugin/branches/4.5/package-res/reportviewer

Architectural Overview

The Pentaho Reporting Web Viewer is built from the ground up to be extensible. Every part of the Report Viewer from the prompting to report content display can be overridden easily to allow a tight integration or custom behavior where desired.

...

A large majority of the code is pure JavaScript on the client with a small number of Java components on the server reponsible for rendering the report and generating suitable Parameter XML to define the client-side prompt. The entire reporting prompt is generated and rendered on the client side and can be manipulated at every step of the way.

Customizing the Reporting Web Viewer

The core of the Reporting Web Viewer is the pentaho.reporting.Viewer and pentaho.reporting.Prompt objects; Viewer and Prompt from here on out. Prompt is designed to be a Pentaho Reporting-specific Pentaho Prompting implementation to provide the prompt for a report. It is where prompt refreshing (for cascading prompts), session timeout, and Pentaho Reporting prompt parsing is implemented. It contains the Pentaho Prompting pentaho.common.prompting.PromptPanel reference and is responsible for initializing it.

The Viewer handles all interactions with the view: rendering the report as a styled page, updating the page control, providing localization, and providing hooks for report designers to use (window.reportViewer_openUrlInDialog and window.reportViewer_hide).

Custom Prompting Components

For information on how to define your own custom prompting component check out the Pentaho Prompting Project project page for more documentation.

...