You are on page 1of 9

Oracle Report Deployment 

• Configuration 
o  On what basis does the Reports Server increase and decrease the number of engines? Should I manually  
shutdown and start engines?
o  Does the Reports Server command line client (rwclient) require Net9 on the client?  
o  Is there a limit to the size of the  cgicmd.dat
    file?
    
o  How can I verify that my HTTP service is up and running?  
o  How can I verify that my Reports Servlet is set up properly and running?  
o  What Web and J2EE application servers can be used with the Reports Server?  
o  Since Oracle Reports JSPs are based on standard J2EE technology, I can deploy them on any J2EE  
application server. Does that mean I don't need to buy Oracle Application Server? 

o  Is any particular email server recommended with use of the Reports Server?  
o  How do I configure fonts for use with Oracle Reports?  
o  How do I configure Oracle Forms for use with Oracle Reports?  
o  How do I configure Oracle Workflow for use with Oracle Reports?  
o  How do I configure printers for use with Oracle Reports?  

• How To 
o  Is there a visual user interface where end users can schedule reports? 
o  How can I generate Microsoft Excel output with Oracle Reports?  
o  Is it possible for the command line client to kick off a job and then log off, still having the report execute on  
the Reports Server?
o  Can I run a report based on the occurrence of an event in the database (for example, insertion of data in a  
table)?

• Java and JSP
o  Can I call Java classes from within the report?  
o  Can I run a JSP report from the servlet?  
o  In paper reports, I use the hyperlink property to call another report and to pass the parameters. How do I do  
this in the JSP Web source? 
o  How do I specify the number / date format for a field in the JSP Web source?  
o  How can I use a format trigger in a JSP?  
o  What is the format of the URL for running a JSP?  

• Management 
o  How do I access the Reports Server Queue, that is, how do I trace past jobs?  
• On the Web 
o  How does Oracle Reports publish information on the Web?  
o  What do I need in order to dynamically display my reports on the Web?  
o  What Web browser versions does Oracle Reports work with?  
o  If a user runs a long paginated report over the Web, is there a way to view one page at a time and provide  
navigation links to different pages?

• Output
o  Where can I store report output once a report is executed?  
o  What is Report Bursting and Distribution?  
o  I develop on Microsoft Windows and deploy on UNIX / Linux. Why does the output look different in  
development and deployment platforms? 

• Security 
o  How is the Oracle Reports environment secured? 
o  I do not plan to use Oracle Portal. How can I secure my Oracle Reports environment?  
o  How do I ensure that users log in before they run a report and view the output?  
o  How can I disable Oracle Single Sign­On (SSO) with Oracle Reports Services ?  

• Reports Server Features 
o  What are the load balancing, clustering, and failover features for the Reports Server?  
o  Can scheduled reports be emailed to a group of users without having to identify each user individually?  
o  Can I change the subject line when emailing a report?  

• Troubleshooting
o  Where can I find information on troubleshooting Oracle Reports issues?  

Deployment
Configuration

On what basis does the Reports Server increase and decrease the number of engines? Should I manually 
shutdown and start engines? 

The Reports Server is a single process that dynamically manages a set of Reports runtime engines. During initialization, the 
Reports Server starts the number of engines that you specify in the initEngine attribute. Each Reports runtime engine is 
responsible for executing a single report at any given time, and resides in­memory to execute additional report requests over 
a period of time. When needed, Reports Server starts new engines to service multiple concurrent requests. The maximum 
number of engines that can run simultaneously at any time is dictated by the maxEngine attribute. 
To conserve application server resources, excess or idle Reports runtime engines remove themselves from memory for one 
of the following reasons: 

1. When an engine is idle for a user­defined period of minutes (specified using maxidle attribute), an engine will 


remove itself from the process, and free up any associated resources.   
2. When an engine has run its user­defined maximum number of jobs (specified using englife attribute), the Reports 
engine will die gracefully to be replaced by another engine. 

Since the Reports Server manages the runtime engines dynamically, you do not need to shut down and start engines
manually. However, you do need to specify engine configuration attributes, using which the Reports Server will make sure
that an optimum number of engines is running at any time. It is recommended that you set the maximum number of engines 
(maxEngine attribute) to a value between 2 and 4 times the number of CPUs in the host machine. The engine attributes 
can be specified in the Reports Server configuration file located in ORACLE_HOME/reports/conf/<servername>.conf. 
You can either directly edit this file, or use the Web­based Oracle Enterprise Manager 10g Application Server Control to edit 
it.

For more information, refer to the chapter on Tuning Oracle Reports in Oracle Application Server Reports Services
Publishing Reports to the Web.

Does the Reports Server command line client (rwclient) require SQL*Net on the client? What about Oracle Forms?
It is not necessary to install SQL*Net to use the Oracle Reports command line client (rwclient). By default, it communicates
with the Reports Server using CORBA. If needed, you can force rwclient to use SQL*Net to communicate with Reports
Server by using the command line keyword USEJVM. Refer to Oracle Application Server Reports Services Publishing
Reports to the Web for more information on this command line keyword.

Oracle Forms too does not need a SQL*Net installation to communicate with the Reports Server. However, if you need to
use SQL*Net as the communication layer between Oracle Forms and the Reports Server, you need to make SQL*Net
available to Oracle Forms and Oracle Reports. Refer to Oracle Forms documentation available on the Oracle Technology
Network (OTN) for more information.

Is there a limit to the size of the cgicmd.dat file?
Oracle Reports imposes no limits on the size of the file.

How can I verify that my HTTP service is up and running?
Refer to Oracle HTTP Server Administrator's Guide available on the Oracle Technology Network (OTN).

How can I verify that my Reports Servlet is set up properly and running?
Open the Reports Servlet help page:

http://<Hostname>:<port>/reports/rwservlet
If you see the help page, it means the Reports servlet is set up properly and running.

What Web and J2EE application servers can be used with the Reports Server?
Oracle Reports Services is part of Oracle Application Server. However, it is based on standard technology (J2EE based 
technology), and can therefore be used with any application server that supports J2EE. If you want to use Oracle Reports 
with any J2EE application server other than Oracle Application Server, you need to use Oracle Reports J2EE Thin Client. 
Note that the J2EE Thin Client is supported only via OTN Discussion Forums. Also note that the J2EE Thin Client is 
provided as a sample for standalone OracleAS Containers for J2EE (OC4J). If you need to deploy it on any other J2EE 
application server, you may need to modify the sample to make it suitable for deployment on the other application servers.

Since Oracle Reports JSPs are based on standard J2EE technology, I can deploy them on any J2EE application 
server. Does that mean I don't need to buy Oracle Application Server?
Since Oracle Reports JSPs are based on standard J2EE technology, they can be deployed on any J2EE application server. 
However, the data that the JSP displays is fetched by Oracle Reports Services. For this reason, it is necessary to buy and 
run Oracle Application Server to display the JSP based Web reports. Refer to the Oracle Reports J2EE Thin Client for the 
architecture involved in such a scenario.

Is any particular email server recommended with use of the Reports Server?
Oracle Reports can send email to any SMTP­compliant email server. However, using Oracle Reports Java API, you can 
create your own plug­in destination that sends email to email servers that are not SMTP­compliant. Refer to Oracle Reports 
Software Development Kit (SDK) for more details.

How do I configure fonts for use with Oracle Reports?
Refer to the fonts chapter in Oracle Application Server Reports Services Publishing Reports to the Web for information on 
managing fonts with Oracle Reports.

How do I configure Oracle Forms for use with Oracle Reports?
Refer to the white paper Integrating Oracle Reports Services 10g in Oracle Forms Services 10g available on the Oracle 
Technology Network (OTN).

How do I configure Oracle Workflow for use with Oracle Reports?
Refer to the white paper Integrating Oracle Workflow with Oracle Reports available on the Oracle Technology Network 
(OTN).

How do I configure printers for use with Oracle Reports?
Refer to the chapters on printing and cross­platform deployment available in Oracle Application Server Reports Services  
Publishing Reports to the Web.

How To

Is there a visual user interface where end users can schedule reports?

There are two ways to schedule your reports from a user interface: 

1. Oracle Reports is tightly integrated with Oracle Portal. You can register and publish the reports in Oracle Portal, and 
the relevant Portal page can be used by the end users to submit report requests. The report portlet displays a 
Customize link to the end user, which contains a Schedule tab. On clicking this tab the end user gets a user 
interface that can be used to specify the scheduling requirements. 
2. You can write a custom HTML interface, prompting the user to enter all the necessary scheduling data. This HTML 
interface then needs to submit the selected parameters to the Reports Server. 

How can I generate Microsoft Excel output with Oracle Reports?
Beginning with 10g Release 2 (10.1.2), Oracle Reports introduces a new output format (DESFORMAT=SPREADSHEET),
which allows you to generate output from paper layout reports to HTML files that can be directly opened with Microsoft Excel
2000. This output format preserves the rich layout formatting such as colors, fonts, conditional formatting, graphs, and
images.

Additionally, you can generate report output in Microsoft Excel in the following ways:

• Generate a report to delimiteddata output format, and open in it Microsoft Excel. This method is recommended 
when you need to get the data in Excel output, but do not need rich formatting.
• Deploy a JSP report with Microsoft Excel­specific tags under OC4J, to display it in Excel inside your Web browser. 
This method is recommended when you wish to generate Excel output using JSP­based Web reports, or if you need 
to generate Excel's native graphs and formulas using HTML tags.

See the Oracle Reports online Help for detailed information each of these methods of generating Microsoft Excel output.

Is it possible for the command line client to kick off a job and then log off, still having the report execute on the 
Reports Server?
Yes. Use the command line keyword BACKGROUND=YES. This runs the report asynchronously. The client sends the call to 
the Reports Server, then continues with other processes without waiting for the report job to complete. If the client process is 
killed, the job is canceled.

Can I run a report based on the occurrence of an event in the database (for example, insertion of data in a table)?
Yes. Oracle Reports provides a PL/SQL API that allows you to submit jobs from the database. This API is called event­
driven publishing API. See the Oracle Application Server Reports Services Publishing Reports to the Web for more 
information and sample code.

Java and JSP

Can I call Java classes from within the report?
Yes. Oracle Reports provides a function called Java Importer, using which you can automatically generate PL/SQL 
packages and procedures to access Java classes and then program with the generated PL/SQL in your reports. The 
PL/SQL generated by the Java Importer is robust, offering support for the original Java class constructors, methods, and 
fields. Refer to the Oracle Reports online Help for more information.

Can I run a JSP report using rwservlet?
Yes, but you will only have access to the paper layout. If you want to view the Web layout output, you have to run the JSP on 
a J2EE application server, such as Oracle Application Server Containers for J2EE (OC4J).

In paper reports, I use the hyperlink property to call another report and to pass the parameters. How do I do this in 
the JSP Web source?
In a JSP Web report, you need to build the hyperlink yourself. Here is sample code that creates a hyperlink in the JSP Web
source. The hyperlink calls another report and passes the department number dynamically:

<tr>
<td>
<a href="http://machine:port/reports/Myreport.jsp?p_1=<rw:field id="Deptno123" src="DEPTNO"
/>">
<rw:field id="Deptno456" src="DEPTNO" nullValue="&nbsp;"> F_DEPTNO </rw:field>
</a>
</td>
</tr> 

In the above code, notice how the field DEPTNO is referenced in the HREF tag. At runtime, this reference is resolved to the
actual department number, and sent as a parameter to the report that is called.

How do I specify the number / date format for a field in the JSP Web source?
In the JSP Web source, find the <rw:field> tag for the field, and add the format mask as shown in the following example:
<rw:field id="hiredate" src="HIREDATE" formatMask="DD-MON-YYYY"/> 

How can I use a format trigger in a JSP?

First, create the format trigger. For example, to turn the text red for sal when it is between 1500 and 2500, you would create 
the following format trigger in the Reports Builder: 

function
redsal return boolean is begin if :sal between 1500 and 2500 then
srw.set_text_color('red');
else srw.set_text_color('black'); end if; return true; END;

Next, in the JSP Web source, find the <rw:field> tag for the field, and add the function as shown in the example below:

<rw:field id="sal" src="SAL" formatTrigger="redsal"/>

What is the format of the URL for running a JSP?
http://hostname:port/ContextRoot/reportname.jsp?server=...&userid=...

Note: ContextRoot is the context root of the application that includes your JSP. The context root is specified by the
deployer at the time of deploying the application. For more information on deploying and running a JSP Web report, refer to
the chapter on Running Report Requests in Oracle Application Server Reports Services Publishing Reports to the Web.

Management

How do I access the Reports Server Queue, that is, how do I trace past jobs?
You have three options. The first option (recommended option) is to use the Web­based Oracle Enterprise Manager 10g 
Application Server Control to view the Reports Server job queue. The second option is to access the Reports Server job 
queue on the Web via the following URL:

http://hostname:port/reports/rwservlet/showjobs?server=...

With this URL you can view the Reports Server job queue in HTML format. To get the same data returned to you in XML
format, specify statusformat=xml in the above URL. The third option is to use the event-driven publishing API that
automatically pushes the content of the Reports Server job queue into a database table. For more information, refer to
Oracle Application Server Reports Services Publishing Reports to the Web.

On the Web

How does Oracle Reports publish information on the Web?
Oracle Reports can dynamically display information in a Web browser in two ways. You can render your page­based paper 
layout using the following industry­standard formats: Adobe's Portable Document Format (PDF 1.4), HTML (4.01), HTML 
with Cascading Style Sheets (HTML 4.01), XML (XML 1.1), Microsoft Excel­compatible spreadsheet, or Microsoft Word­
compatible Rich Text Format.

Another option is to create a true Web page using the JSP­based Web source of your report. The advantage of using a JSP 
is that you can inject dynamic Reports content into an existing Web page. In this mode, reports no longer owns the Web 
page, and you can use any HTML page (for example the HTML page that your Web designer provides you). Therefore, the 
result will fit exactly in the look and feel of your Web site.

What do I need in order to dynamically display my reports on the Web?
Reports are executed in a 3­tier environment with the Oracle Aplication Server (containing Oracle Reports Server and 
OC4J) running in the middle tier. The end users can dynamically run reports or retrieve previously run reports by simply 
entering a URL in a Web browser. Since the output is displayed in the Web browser, the end user does not need to install 
any software.

What Web browser versions does Oracle Reports work with?
Oracle Reports 10g Release 2 (10.1.2) works with all the browsers supported by Oracle Application Server 10g Release 2 
(10.1.2). Refer to Metalink for the list of browsers supported by Oracle Application Server 10g Release 2 (10.1.2). For PDF 
output, the Adobe Acrobat plug­in for the browser should be used. This plug­in is available for any browser that supports
plug-ins.

If a user runs a long paginated report over the Web, is there a way to view one page at a time and provide 
navigation links to different pages?
Yes. Use the command line keywords PAGESTREAM=YES, and DESFORMAT=HTML or HTMLCSS when calling the report 
on the Web. With the PAGESTREAM keyword set to yes, the report output is written to multiple files instead of one file. The 
first page is then sent back to the user's browser along with a menu bar, which facilitates navigating to the first/last page, 
next/previous page, or to a specific page number.

Output

Where can I store report output once a report is executed?
The output of a report job can be stored in many different ways. The destination of the output is determined by the 
DESTYPE parameter. Oracle Reports supports a variety of destinations. You can store the output as a file in the file system, 
send the output to an email recipient, send it to a printer, push it to Oracle Portal, to an FTP Server, or a WebDAV­enabled 
Web site. Additionally. using the pluggable destination API, you can create your own mechanisms for storing report output. 
For example, you could create a destination that pushes the output directly into Oracle iFS, or one that sends the output to a 
database.

What is Report Bursting and Distribution?
Report Bursting is the ability for report output to be split into multiple files based on a logical grouping, so that each file can
be sent by the Reports Server to a different destination. For example, in a single report execution you can generate output
for all departments, and use report bursting to split the output into multiple files (one per department).

After bursting the output into multiple files, you can use another feature of Oracle Reports called distribution to send each
department's output to only the relevant manager. In this way, the Oracle Reports features of bursting and distribution, when
used together, allow you to send only the relevant information to the relevant recipient. It is also possible to use the
distribution feature separately to send a single report output to mutiple destinations. Refer to Oracle Reports Building
Reports and Application Server Reports Services Publishing Reports to the Web for more information.

I develop on Microsoft Windows and deploy on UNIX / Linux. Why does the output look different in development 
and deployment platforms?
Since any enterprise reporting tool is bound to use some platform­specific functionality like the system fonts or printer fonts, 
there exists a possibility that the look­and­feel of the report changes when the report is ported from one platform to another; 
for example, from the development platform (commonly Windows) to the deployment platform (commonly a UNIX­based 
platform). For detailed information on how to avoid and troubleshoot such issues, refer to the cross­platform porting chapter 
in Oracle Application Server Reports Services Publishing Reports to the Web.

Security

How is the Oracle Reports environment secured?
Oracle Reports is tightly integrated with Oracle Portal and Oracle Identity Management to provide a comprehensive security 
architecture. To secure the reports, Reports Servers, and other resources such as printers, you need to register these 
resources with Oracle Portal. This allows you to assign permissions to users or groups for these resources. The users and 
groups information is stored in Oracle Identity Management. Once the user requests a report, the Reports Services works 
with Oracle Identity Management (Oracle Single Sign­On and Oracle Internet Directory) to authenticate users and with 
Oracle Portal to ensure the user has privileges to execute the selected report.

Oracle Portal exposes an easy to use interface where the administrators can perform all security related operations - create
users and groups, register reports and other resources, and assign privileges. For more information, refer to the chapter on
Securing Oracle Reports Services in Oracle Application Server Reports Services Publishing Reports to the Web.

I do not plan to use Oracle Portal. How can I secure my Oracle Reports environment?
When you license Oracle Application Server Enterprise Edition, you get a license to Oracle Reports as well as Oracle Portal. 
If you do not want to use Oracle Portal to build your corporate portal, you can still install and configure Oracle Portal so that 
it can be used by your Oracle Reports administrators to specify access control information. This access control information 
makes sure that only authorized users can run reports.

If you would not like to install and configure Oracle Portal while installing Oracle Application Server, you cannot use the built-
in security architecture of Oracle Reports and you will need to plug in your custom security architecture using Oracle
Reports Java API. Refer to Oracle Reports SDK for more information on Oracle Reports Java API.
How do I ensure that users log in before they run a report and view the output?
If you have secured your report definition files or Reports Servers by registering them with Oracle Portal, the users will be 
forced to log in before they can run the report. Once the user is logged in using the single sign­on credentials, the user is not 
asked to provide the username and password again in the same browser session.

How can I disable Oracle Single Sign­On (SSO) with Oracle Reports Services ?
To take advantage of Oracle Single Sign­On, the SINGLESIGNON parameter in the rwservlet configuration file 
(rwservlet.properties) is set to YES, which indicates that you will use Oracle Single Sign­On to authenticate users. 
You may change this parameter to NO, if you choose not to use Oracle Single Sign­On. If you choose NO, the Reports 
Server authenticates users itself instead of routing requests via Oracle Single Sign­On. Note that Oracle Reports Services is 
configured for Oracle Single Sign­On out of the box. Oracle considers this to be the normal security deployment model and 
you should only turn it off if you plan to run in a completely custom security configuration.

Reports Server Features

What are the load balancing, clustering, and failover features of the Reports Server?
Reports Server clustering is deprecated in Oracle Reports 10g Release 2 (10.1.2). As a result, it is not recommended to use
Reports Server clustering. Instead, it is reccommended that you follow Oracle Application Server High Availability Guide and
Oracle Application Server Enterprise Deployment Guide for configuring Oracle Reports for high availability.

The Reports Server clustering feature will be removed from the product in a release after 10g Release 2 (10.1.2).

Can scheduled reports be emailed to a group of users without having to identify each user individually?
Yes. You need to get the email recipient addresses in the report's data model. For example, each department manager's 
email address can be inserted in a database table. You can then use the bursting and distribution feature to send each 
department's report to the appropriate manager. Alternatively, if you need to send the complete report to a group of users 
without bursting, you can create a distribution list in your email server, and use this distribution list name as the DESNAME.

Can I change the subject line when emailing a report?
Email functionality has been enhanced in Oracle Reports to allow users to set several email properties, including subject,
with both static or dynamic (that is, data driven) values, setting the CC and BCC fields, setting the importance level, and so
on. Refer to the Command Line Keywords section of Oracle Application Server Reports Services Publishing Reports to the
Web for more information.

Troubleshooting

Where can I find information on troubleshooting Oracle Reports issues?
Refer to the new troubleshooting appendix in Oracle Application Server Reports Services Publishing Reports to the Web
that describes common problems that you might encounter when deploying your reports using OracleAS Reports Services
and explains how to solve them.

You might also like