Build reports by using ODS to create HTML, PDF, RTF, Excel, text reports and more!

Base SAS, version 9.3 Proc tabulate error within ODS

Reply
Regular Learner
Posts: 1

Base SAS, version 9.3 Proc tabulate error within ODS

In our development environment we have code within ODS that works fine, but not in production.

Within the ODS there is a proc tabulate that gets this message-

ERROR: Page size exceeded by column titles at line 259.

NOTE: The SAS System stopped processing this step because of errors.

 

line 259  Period*bidgrp="Catergory"*visit=" "

line 260 n='Total:'

 

 

The ODS code above above the Proc tablulate is along with a sort and options statement, right after this is the Proc Tabulate.  There is no other ods code except right after the Proc Tabulate.  It is ods listing close.

ods html path= "&path"

body="&fileout"; 

 

proc sort data=foroutput;

by bidgrp;

run;

option missing = 0;

 

 

So there is a difference in environments that no one here can identify or acknowledges.  So the next best bet is to find a work around that will work in both.

 

Any suggestions?

 

Thanks!

Super User
Super User
Posts: 9,866

Re: Base SAS, version 9.3 Proc tabulate error within ODS

Have you compared autoexec files between the two?  Autoexec gets loaded (plus others) first, which sets up some options.  It maybe that in one setup you have a smaller pagesize.  Thats what this error seems to imply.  Anyways a quick google shows:

https://communities.sas.com/t5/SAS-Procedures/SAS-Error-Q/td-p/47149

 

Which suggests turning listing destination off - something which I always tend to do nowadays as it only gives warnings most of the time:

ods listing close;  

SAS Super FREQ
Posts: 9,434

Re: Base SAS, version 9.3 Proc tabulate error within ODS

Hi:

  Typically, pagesize and linesize exceeded messages are caused by having the LISTING destination open while you are generating long strings of text that work in HTML.

 

  I assume you're running the same version of SAS on both locations. Typically, you need to issue ODS LISTING CLOSE; at the TOP of your output. Your note seemed to indicate that you had ODS LISTING CLOSE -after- the PROC TABULATE, but you're using ODS HTML for output, so you don't need LISTING open. I would suggest these 2 things:

1) increase pagesize -- just for grins, it shouldn't matter what pagesize is for ODS HTML, so if you do

options pagesize=max;

that will set the pagesize to the max --which is usually 32767.

AND

2) issue ODS LISTING CLOSE; in front of your ODS HTML statement -- before you run any of your TABULATE output

 

Cynthia

Ask a Question
Discussion stats
  • 2 replies
  • 73 views
  • 0 likes
  • 3 in conversation