Usage Note 9548: Inconsistent column placement on ODS PRINTER/RTF output
ODS PDF and RTF set up the widths of columns on a page-by-page basis. If one value for a column is particularly long on a page, its cell width will be wider on that page. If there are too many columns to fit on a page, this might result in inconsistent column placement across pages. The resulting output could have columns A, B, and C on the first page, D and E on the second page, only columns A and B on the third page, and D, E, and F on the fourth page.
There are several things that you can do to get more consistent column placement and widths.
-
Set the CELLWIDTH attribute (in pixels, percentages, or units of measure) from PROC TEMPLATE as shown in the sample code below. The disadvantage to this is that all columns are the same width. This could be problematic if one column is very long and another column has only a single digit or character.
proc template;
define style mystyle;
parent=styles.printer; /* or STYLES.RTF for RTF output */
style header from header / cellwidth=1in;
end;
run;
-
If using PROC PRINT or PROC REPORT, you can set the CELLWIDTH individually as illustrated in the sample code below.
proc report nowd data=sashelp.class;
col name age;
define name / style={cellwidth=25%};
define age / style={cellwidth=15%};
run;
For information about similar PROC PRINT syntax, see SAS Note 25089, "Modifying PROC PRINT output for the ODS destinations."
-
Set the UNIFORM option in the ODS PRINTER (PCL/PS/PDF) statement. This causes multi-page tables to be a uniform width. However, because ODS PRINTER has to hold the entire table in memory, this could cause a serious degradation in performance. This option is not valid in the ODS RTF statement.
Operating System and Release Information
SAS System | Base SAS | Microsoft Windows NT Workstation | 8 TS M0 | |
Microsoft Windows 2000 Server | 8 TS M0 | |
Microsoft Windows 95/98 | 8 TS M0 | |
Microsoft Windows 2000 Datacenter Server | 8 TS M0 | |
Microsoft Windows 2000 Professional | 8 TS M0 | |
Solaris | 8 TS M0 | |
OpenVMS VAX | 8 TS M0 | |
Microsoft Windows 2000 Advanced Server | 8 TS M0 | |
IRIX | 8 TS M0 | |
64-bit Enabled Solaris | 8 TS M0 | |
z/OS | 8 TS M0 | |
OS/2 | 8 TS M0 | |
HP-UX | 8 TS M0 | |
ABI+ for Intel Architecture | 8 TS M0 | |
CMS | 8 TS M0 | |
64-bit Enabled AIX | 8 TS M0 | |
64-bit Enabled HP-UX | 8 TS M0 | |
OpenVMS Alpha | 8 TS M0 | |
Tru64 UNIX | 8 TS M0 | |
AIX | 8 TS M0 | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
Type: | Usage Note |
Priority: | |
Topic: | SAS Reference ==> ODS (Output Delivery System)
|
Date Modified: | 2012-05-22 11:35:54 |
Date Created: | 2003-03-03 13:32:26 |