01.02.2013 Views

Publishing Reports to the Web - Downloads - Oracle

Publishing Reports to the Web - Downloads - Oracle

Publishing Reports to the Web - Downloads - Oracle

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Methodology<br />

20.1.6 Running <strong>the</strong> Report<br />

<strong>Reports</strong> and <strong>Oracle</strong> Application Server Forms Services allows you <strong>to</strong> pass blocks of<br />

data between <strong>the</strong> associated products and removes <strong>the</strong> need for subsequent queries.<br />

This technique referred <strong>to</strong> as query partitioning ensures that <strong>Oracle</strong> <strong>Reports</strong> is<br />

responsible for formatting data and ignores dynamic alteration of queries via triggers<br />

and lexical parameters.<br />

Passing data between <strong>Oracle</strong> Application Server Forms Services and <strong>Oracle</strong> <strong>Reports</strong> is<br />

achieved using record groups and data parameters, in conjunction with <strong>the</strong> Run_<br />

Report_Object built-in (for calling <strong>Oracle</strong> <strong>Reports</strong> from <strong>Oracle</strong>AS Forms Services).<br />

This is <strong>the</strong> only supported way <strong>to</strong> call <strong>Oracle</strong> <strong>Reports</strong> from <strong>Oracle</strong>AS Forms Services.<br />

Refer <strong>to</strong> <strong>the</strong> Integrating <strong>Oracle</strong>9iAS <strong>Reports</strong> in <strong>Oracle</strong>9iAS Forms white paper on OTN,<br />

(http://otn.oracle.com), for more information on calling a report from an <strong>Oracle</strong><br />

Application Server Forms Services application.<br />

Note: Unless data parameters are unreasonably large or <strong>the</strong><br />

queries particularly complicated, <strong>the</strong> perceived performance<br />

improvements should be negligible. Additionally, only <strong>to</strong>p level<br />

groups in a report can accept data parameters passed from forms.<br />

You can fur<strong>the</strong>r affect <strong>the</strong> overall performance by setting specific runtime options:<br />

■ <strong>Reports</strong> Builder au<strong>to</strong>matically runs an error check on paper layout definitions and<br />

bind variables. Set <strong>the</strong> runtime parameter RUNDEBUG=NO <strong>to</strong> turn off this extra<br />

error checking at runtime.<br />

■ For JSP report definitions, <strong>Reports</strong> Builder performs tag validation and checks for<br />

items such as duplicate field identification or malformed attributes. This feature is<br />

useful only during <strong>the</strong> design phase, but not in <strong>the</strong> production environment. By<br />

default, Tag validation in <strong>Oracle</strong>AS <strong>Reports</strong> Services is off. To turn this option on,<br />

use <strong>the</strong> VALIDATETAG=YES option in your http request.<br />

■ By default, <strong>the</strong> RECURSIVE_LOAD command line option used by both rwrun and<br />

rwservlet commands is set <strong>to</strong> yes causing invalid external references of PL/SQL<br />

program units <strong>to</strong> au<strong>to</strong>matically recompile. Set <strong>the</strong> RECURSIVE_LOAD option <strong>to</strong> no<br />

in a production environment, because this is useful only in a development<br />

environment.<br />

■ For SQL queries, <strong>Oracle</strong> <strong>Reports</strong> takes advantage of <strong>the</strong> <strong>Oracle</strong> database’s array<br />

processing capabilities for data fetching. This allows records <strong>to</strong> be fetched from <strong>the</strong><br />

database in batches instead of one at a time, resulting in fewer calls <strong>to</strong> <strong>the</strong><br />

database. However, array processing requires more memory on <strong>the</strong> execution<br />

platform <strong>to</strong> s<strong>to</strong>re <strong>the</strong> arrays of records returned. To reduce <strong>the</strong> network load<br />

(number of network trips) in a production environment, set <strong>the</strong> value of <strong>the</strong><br />

ARRAYSIZE command line parameter (defined in kilobytes) <strong>to</strong> a large value.<br />

■ Set <strong>the</strong> LONGCHUNK parameter <strong>to</strong> as large a value as possible, if your report uses<br />

<strong>the</strong> LONG, CLOB, or BLOB data types <strong>to</strong> retrieve large amounts of data. This<br />

reduces <strong>the</strong> number of increments taken by <strong>Oracle</strong> <strong>Reports</strong> <strong>to</strong> retrieve long values.<br />

On an <strong>Oracle</strong>8i or <strong>Oracle</strong>9i server, use <strong>the</strong> more efficient CLOB or BLOB data<br />

types, instead of LONG or LONG RAW.<br />

■ If <strong>the</strong> paper layout Parameter Form is not required, set <strong>the</strong> PARAMFORM option <strong>to</strong><br />

NO.<br />

Use <strong>the</strong> COPIES parameter carefully when printing <strong>to</strong> PostScript. Setting COPIES <strong>to</strong> a<br />

value greater than 1 requires that <strong>Oracle</strong> <strong>Reports</strong> save <strong>the</strong> pages in a temporary<br />

20-16 <strong>Oracle</strong> Application Server <strong>Reports</strong> Services <strong>Publishing</strong> <strong>Reports</strong> <strong>to</strong> <strong>the</strong> <strong>Web</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!