Search This Blog

Monday, April 9, 2012

Oracle Report Triggers

There are eight report triggers. Of these, there are five global triggers called the Report Triggers. They are fired in the following order :
* Before Parameter Form
* After Parameter Form
* Before Report
* Between Pages
* After Report

Apart from the above Five Report Triggers, there are three other types of triggers :
* Validation Triggers
* Format Triggers
* Action Triggers

Before Form: Fires before the run-time Parameter Form is displayed. From this trigger, you can access and change the values of parameters, PL/SQL global variables, and report-level columns.

After Form: Fires after the run-time Parameter Form is displayed. From this trigger, you can access parameters and check their values. This trigger can also be used to change parameter values or, if an error occurs, return to the run-time Parameter Form. Columns from the data model are not accessible from this trigger.

Before Report: Fires before the report is executed but after queries are parsed and data is fetched.

Between Pages: Fires before each page of the report is formatted, except the very first page. This trigger can be used for customized page formatting.

After Report: Fires after you exit the Previewer, or after report output is sent to a specified destination, such as a file, a printer. This trigger can be used to clean up any initial processing that was done, such as deleting tables.

Validation Triggers: Validation Triggers are PL/SQL functions that are executed when parameter values are specified on the command line and when you accept the run-time Parameter Form. Validation Triggers are also used to validate the Initial Value of the parameter in the Parameter property sheet.

Format Triggers: Format Triggers are PL/SQL functions executed before the object is formatted. The trigger can be used to dynamically change the formatting attributes of the object.

Action Triggers: Action Triggers are PL/SQL procedures executed when a button is selected in the Previewer. The trigger can be used to dynamically call another report (drill down) or execute any other PL/SQL.

5 comments: