Oracle Report Print With Incorrect Page Break Points

Oracle Applications reports generate and/or print with incorrect page break points when certain Apps printers are selected.  The report is produced either with a blank page or with a few varying amount of lines every other page throughout the entire report.

This issue happened to one of the client who we recently upgraded from Windows 2000 / EBS 11.5.9 to Windows 2003 / EBS 11.5.10.2.

Page break in the outfile {%COMMON_TOP%\admin\out\(SID)_(hostname)} indicates @ 66 lines which is correct. But on the paper print out 4 lines overflow into the next page followed by a form feed leaving alternate page with just 4 lines and so on.

There are two possible causes for this condition:

1. The “height” and “width” in both SRW driver files (*.prt) does not match the “Rows” and “Column” values specified in the print style form. When a mismatch occurs, additional page breaks are inserted into the output file.

2. Some printer make and models cannot not physically print 66 rows for a given font and/or font size. This is a limitation of the printable area for the specific printer make or model. Setting the page break to 57 lines resolves the incorrect page break points for most make and models of printers.

This 2nd cause is what has hit us.

NOTE 1: In Oracle Applications regardless whether you are printing or not, the report’s output file is affected by the printer name selected at request submission time. Instructions from the SRW driver and print style are embedded into the output file used for both report viewing and printing. Keep in mind, there are two SRW drivers, one associated with the print style and the other with the printer driver. The “height” and “width” of BOTH SRW drivers MUST match the Columns and Rows of the print style.

Further investigation confirmed that the old instance’s LANDSCAPE style has 132 x 62 as its dimension and the upgraded instance has 132 x 66 (which is the default, perhaps the upgrade refreshed this setting).

To resolve this issue we decided to lower the rows value from 66 to 62 (the client has uniform printer models, everything is Epson).

Adjusting the rows to a value lower than 66 gives “APP-FND-01366: You have entered invalid dimensions for this print style”, this is because the LANDSCAPE style is in use in some concurrent programs with rows set to 66. The print style form will not allow you to lower the column / row value if a program is registered with “print style required” at the original value and/or it is the only print style available with this original value. The following SQL statement will help identify which programs need to be changed–if necessary update the print style name at the end of the statement.

set pagesize 100
select concurrent_program_name Short_Name, minimum_length Length
from fnd_concurrent_programs
where required_style = ‘Y’
and minimum_length > 62
and output_print_style = ‘LANDSCAPE’;

The output will be the list of concurrent programs currently using LANDSCAPE style with rows value exceeding the desired value of 62 (the magic value previously set in old instance:)

Query each program returned by the script above and change the rows value to 62 or something lower (hopefully the list is short, on our instance it was just 4 records)

Return to Printer Style definition and change the rows value to 62.

Save. Bounce the concurrent manager, run a print test.

There is a suggestion to just create a new print style with the modified values, but we were having issues with the available sequence number, sequence value up to 9999 is already in use (don’t know what number is unused).

359716.1, 165393.1, APP-FND-01366, GLACTANL

Advertisements

About this entry