While this technique works for the Oracle Reports written at EKU, there is no guarantee that it will work for you. Be sure to thoroughly test this before implementing in your Production instance(s).
UPDATE: The 7.1 version of the ekuorep.pll was modified on Jan 9, 2005 due to an error with output going to PDF's with imbedded images.
By now, you've probably realized that the techniques I shared at Summit to run Oracle Reports in INB using the RUN_REPORT_OBJECT command are not compatible with 7.1. This is not a criticism -- just a statement of fact. SCT did a great job enhancing the security for running Oracle Reports in 7.1, but to take advantage of these enhancements, the code in every one of your Oracle Reports must be modified and the techniques used in 7.1 are just not backwards compatible with 6.x.
If you only have a handful of Oracle Reports, this is not much of an issue. However, if you have a large number of Oracle Reports that are constantly being modified and new reports added, it is an issue. At EKU we are rapidly approaching 400 Oracle Reports that we are running thru Banner. We needed a technique that would allow us to modify our exisiting reports over time without maintaining two separate code trees.
We decided to create a user written Procedure Library that is attached to our reports. I have a 6x version and a 71 version. Save the _6x version in your Banner 6 forms directory with the _6x stripped off. Save the _71 version in your Banner 7 forms directory with the _71 stripped off. We attach this PLL along with SCT's PLL(see documentation for more on this) to the report.
Feel free to rename this PLL to any name you wish. If the HTML I am generating in this PLL does not meet you needs, feel free to alter the code as needed to meet your needs. Please do not ask me to make modifications specific for your Institution.
The 6x version of the EKUOREP.pll has the package SCT created in 7.1 to set security defined. The code in the RDF calls this routine which does nothing. The security is then set in the function I created and then the HTML required to use the RUN_REPORT_OBJECT command is generated. The generated HTML is based on the techniques I shared at Summit and is documented here.
When compiling the report in 7.1, the security routine in the RDF is now calling the one provided by SCT and the 7.1 version of my PLL only generates the required HTML. The HTML generated is based on the techniques I shared on boracle and is documented here. This PLL does not support generating HTML to retrieve parameters from the command line with the variable P_action set to _hidden_. If you wish to use the technique used by SCT in their report examples, the code can be modified to generate it.
Once again, I would like to say if the HTML I am generating in this PLL does not meet you needs, feel free to alter the code as needed to meet your needs. Please do not ask me to make modifications specific for your Institution.
All other modifications recommended by SCT for 7.1 are made to the 6.x version of your report. The only difference is the Java declarations and exception processing in the Before Parameter Form Trigger must be commented out when compiling the RDF in Developer 6i for 6.x. When compiling the RDF for 7.1, all you need to do is un-comment these two sections.
Date Posted: 06/15/2005
Revisions:
Here is the documentation I created for our progammers detailing the coding modifications needed for our reports to run.
I created these sample reports for our programmers to use as guides as they modify our Oracle Reports to run in Banner 6.x and 7.1. All of these reports uses the scott.emp and scott.dept tables to create a simple report. You must create public synonyms for the emp and dept tables. To run these reports in Banner you must add the reports to banner security and gjajobs.
Generate report output to a pdf displayed in browser: gxjpdf.rdf
Generate report output to Excel: gxjxcl.rdf
Generate report output to Word: gxjword.rdf
Generate output for a fixed format text file: gxjfile.rdf
This example shows how to create a report that uses parameters defined in GJAPDEF. Parameter 01 must be defined in GJAPDEF which is the DeptNo from the scott.dept table. If you modified the 7.1 version of GJAPCTL as I did and supressed the automatic insertion of parameters 71-76, you will need to define parameter 71 (Desformat) and 76 (paramform).
Generate report output using parameters defined in GJAPDEF: gxjnprm.rdf
These examples use a Java Script developed by John Cigas, Computer Science professor at Rockhurst University and myself that allows the user to select the output going to any combination of Excel, Word and PDF output.
Generate report output to pdf/Excel: gxjjxcl.rdf
Generate report output to pdf/Word: gxjjrtf.rdf
Generate report output to Word/Excel: gxjjwxl.rdf
Generate report output to pdf/Word/Excel: gxjjwxp.rdf