Google SAS Search

Add to Google

Monday, February 14, 2005


Today I am working on V6 to V8 issues. The client I am working with has a whole system written in SAS: AF, BASE, STAT, pretty much a mixed bag.
And man oh man, the V6 to V8 conversion has been a major source of headaches. Here's what we're working on:
AF screens capture and validate user input, some BASE SAS code is created and gets run using the AT command. The code does some
subsetting and then creates the reports the user asked for. Pretty standard stuff. Here's the problem: the proc gcharts use the NOZEROS option
to keep the proc from creating empty bar charts. In V6 the option causes the proc to fail if a group can't be drawn and then it's on to the next step. In V8, the option now causes a syntax error(!!!??) when a group can't be drawn. SAS sets obs = 0, checks syntax, and doesn't run any of the subsequent steps. Which means some of the reports don't get created.

Is this little change documented anywhere? Can anyone explain to me why an option should cause SAS to behave as if there were a syntax error?

The fix:
options noSyntaxCheck; I'll give you five minutes to find that in the documentation.

Ding! Time's up. Don't feel too bad if you can't find it. I couldn't either. I don't know how I was ever productive before google.


  1. I found it! Do I get a prize?
    Chapter Name - OpenVMS: DECnet Access Method
    Section Name - OpenVMS: DECnet Access Method

    Paragraph Name - Setting Options at the Remote Host

    Although sign-on script files are not used for the DECnet access method, you still may set these remote host options at the remote host.

    allows the continuation of statement processing at the remote host regardless of syntax error conditions.
    This option is valid as part of a configuration file, at a SAS invocation, or in an OPTIONS statement.

  2. Ha ha good job! Although, I should have been more explicit with my challenge. Suppose you didn't know you were looking for NOSYNTAXCHECK but only for a way to turn off the SAS-set-OBS=0-and-will-go-into-syntax-checking- mode feature.

    You'd probably find the solution faster than me anyways! Good thing I didn't issue a money challenge!