Oracle Reports is an enterprise reporting tool. You can generate reports in any popular format for web and paper, burst, and distribute reports to any destination. Businesses get immediate access to information to all levels within and outside of the organization in an unrivaled scalable and secure environment.
Oracle Reports is the one of execution methods available in Oracle Apps while defining concurrent program executable. In this article, I will cover how to define a concurrent program based on Oracle Reports (RDF) executable.
Note: This method is obsolete to define concurrent programs on Reports. Oracle recommends using XML publisher instead as Oracle Reports released with Oracle Fusion Middleware’s 22.214.171.124.0 will be its terminal release.
Step 1 – Create a sample/demo report (RDF)
To demonstrate working, let’s create a sample report on the DBA_OBJECTES table to display 20 rows in a tabular format. You can use any table or data source to create a report. This report has an owner as an input parameter. Depending on the Owner’s name respective object data should get displayed.
Start Oracle Reports Builder and using a wizard-driven approach simply create a tabular report. Below is the tree layout of the report.
The paper layout of the report.
We are going to have only one parameter for demo purposes. p_conc_request_id is the important and mandatory parameter you need to create. It holds request-id returned by the concurrent manager. If you miss this parameter, your program will end in error.
- P_CONC_REQUEST_ID – This user parameter is mandatory when you run it in the Oracle Apps environment. Concurrent Manager returns request_id in this parameter.
- P_OWNER – Placeholder for custom OWNER Parameter.
Add below code the respective triggers mention.
function BeforeReport return boolean is begin SRW.USER_EXIT('FND SRWINIT'); return (TRUE); end;
function AfterReport return boolean is begin SRW.USER_EXIT('FND SRWEXIT'); return (TRUE); end;
SRW.USER_EXIT(‘FND SRWINIT’) – This user exit sets up information for use by profile options and other AOL features. Always use it before report trigger.
SRW.USER_EXIT(‘FND SRWEXIT’) – This user exit frees all the memory allocation done by other AOL exits. Always use it in the after report trigger.
Step 2 – Copy/FTP the report file to Unix Server
Copy this RDF file to the UNIX server. If there is a multi-node environment, make sure to copy in each node. RDF is a binary file, so transfer it using Binary FTP mode. Either use WINSCP of FILEZILLA. Both are free-to-use software.
Step 3 – Define executable
Navigate to Application Developer -> Concurrent -> Executable. Define executable as shown below.
Step 4 – Define Concurrent Program
Navigate to Application Developer -> Concurrent -> Program. Define concurrent program as shown below.
Define concurrent program parameter as shown below. The Token label show at the end of the image should match the name of your parameter in rdf file.
Step 5 – Register concurrent program
Next register program in valid responsibility. Navigate to System Administrator -> Security -> Responsibility – > Request. Add this program to request group
Step 6 – Submit concurrent program
Navigate to the responsibility where you registered the concurrent program. Submit it and check the output. Below is the sample output shown. Oracle Report supports PDF, Text, XML output.
- Oracle E-Business Suite Developer’s Guide – Coding Oracle Reports Concurrent Programs
- Symbol Characters (“Greek”) Instead Of Expected Characters Are Displayed in Reports or Reports Parameter Form (Doc ID 300416.1)
- Master Note: Comprehensive REP-3000 Troubleshooting and Overview Guide (Doc ID 200474.1)