Professional Documents
Culture Documents
Problem Statement
What is a Report?
Embedded Parameter Form Lack of report categorization Lack of report access description Limited report parameter description Inability to build reports from the web Complete Dependence on Oracle Reports Service to view reports Complete dependence on Oracle Report Builder to create reports
Single Dynamic Parameter Form Additional METADATA stored in oracle database to handle
Report Categorization User Access NONE SQL Query Date LOV from Help Table
Report Types
RDF
Legacy Systems with existing oracle reports Created using Oracle Reports Builder Published using Oracle reports Service Individual Parameter forms not required
Report Types
XML
No dependence on Oracle Reports Builder Report is created on the fly using the system Based on the Metadata provided Adheres to the oracle reports DTD Report is automatically deployed.
Report Types
SCRIPTS(ADHOC)
No dependence on Oracle reports builder or Oracle Reports Service. Based on a simple parameterized query. Example
Select * from emp where emp.salary > P_1 and emp.age < P_2
Modules
Report Maintenance ADHOC Report Module XML Report Generator Report Scheduler Report Execution & Viewer
Report Maintenance
Module used to prepare and create reports. A simple user interface provides this functionality. Modules stores the metadata required for every report in the database.
The metadata required for a report is stored in a child table referencing the Report Table Provides the ability to specify Parameter Name, Description, Lookup Type and Sequence Types of Lookup
A module to build reports based on report metadata stored. Output XML file created and is deployed. Creates the following sections which are required to publish a report
Data Layout
If the report has parameters then the parameter name is included within the <userParameter> element An XML report is created and is deployed to a location specified by the REPORTS_PATH env variable
The generator then creates a header section based on information stored in the database
An independent reporting engine which simulates the Oracle Reports Service. Provides Maximum uptime. Implemented as stored procedures. Advantage
Complete independence from Oracle Reports Builder and Oracle Reports Service
User selected variables are passed to the stored procedure variable as a CSV
Report execution stored procedure identifies an ADHOC report The string and the CSV are parsed and a dynamic sql query built
At this stage Select * from Employee where salary > P_1 and age = P_2 select * from employee where salary > 100000 and age= 45
Report Scheduler
Module Used to Schedule Reports RDF/XML Reports scheduled on Oracle Reports Service. ADHOC reports scheduled within the oracle database. Reports can be scheduled daily, weekly or monthly. Scheduled metadata extracted and stored in the database table.
RW_SERVER_JOB_QUEUE
The reports service assigns a jobid to every report which is run against it. Table stores information of every job submitted to the reports service. A web interface queries the table to display a list of scheduled jobs Ability to cancel scheduled jobs.
If report_type = RDF or XML, then the report is scheduled on the oracle reports service If report_type= ADHOC, then DBMS_JOB is used to schedule the report
RW_SERVER_QUEUE contains the submitted job information. and is displayed on the interface
Report Selection
A user interface allows users to select reports Reports are displayed as a hierarchical structure based on the report category metadata Only user specific Reports visible based on metadata. Dynamic Parameter Form displayed based on the metadata RDF/XML/Adhoc reports can be scheduled or viewed instantaneously
Report execution
Also, based on the lookup type a user input is created, which could be a result of a SQL query
Based on the report name , the parameter Descriptions, and Sequence are displayed on the screen The report is executed by passing the dynamic query string created to the reports service or ADHOC engine
The user inputs the variable parameters along with the output format and scheduling preference
Hence creating a Dynamic Parameter form, overcoming the limitations of embedding them within the report
Security
Advantages
No Knowledge of Report Builder Required to Build reports No licensing costs involved (XML,ADHOC) Batch update reports easily (XML) Supports various types of reports RDF,XML,SCRIPTS Independence from Oracle Reports Builder or Reports Service depending on type of report
Technology Used
Oracle Reports Service 10g Oracle Developer Suite 10g Oracle Database 10g PL/SQL JavaScript HTML PL/SQL web toolkit for interface development and server side scripting.
Future Work
Representation of reports metadata in the form of XML Batch processing of XML metadata. Providing a complete web interface for layout description
Screenshots
References
End of lecture
Questions?