Date: Wed, 11 Dec 2002 12:07:24 -0500
Reply-To: "Farrer, Andrew C" <Andrew.Farrer@CIBC.COM>
Sender: "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From: "Farrer, Andrew C" <Andrew.Farrer@CIBC.COM>
Subject: Re: recruiting cheesy, sleasy SAS tricks
Content-Type: text/plain; charset="iso-8859-1"
I am not sure whether this qualifies but I find it extremely useful when JCL
and SAS statements are submitted together. By default, //SYSIN DD * expects
/* starting in column 1 as a delimiter. However, if you like to start your
SAS comments in column 1 then changing the default delimiter makes this
acceptable:
//SYSIN DD *,DLM=QQ
/* Program comments, etc */
sas statements ;
QQ
Similarly, when developing I use a dummy DD to exclude versions of the code:
//DUMMY DD *,DLM=QQ
/* Alternative version comments, etc */
sas statements ;
QQ
//SYSIN DD *,DLM=QQ
/* Program comments, etc */
sas statements ;
QQ
-----Original Message-----
From: Michael L. Davis [mailto:michael@BASSETTCONSULTING.COM]
Sent: Tuesday, December 10, 2002 1:56 PM
To: SAS-L@LISTSERV.UGA.EDU
Subject: recruiting cheesy, sleasy SAS tricks
Hello Friends,
I'd like to do a Coder's Corner presentation at NESUG next year on the
subject of "Cheesy, Sleasy SAS Tricks". As an example, when coding SCL
programs, I'm in the habit of including the statement:
rc=rc ;
to suppress the compiler warning that I'm creating the variable rc but not
using it.
I'd welcome additional candidates for the role of "cheesy, sleasy tricks".
To qualify, they need to be coding declarations or other constructions that
suppress the literal mindedness of SAS or its sometimes over-solicitous
manner of trying to protect us from ourselves.
I'll be sure to acknowledge useful contributions, selected or otherwise, in
the acknowledgement section of the presentation.
BTW, thanks to all for the help last week with regards to reordering the
PDV. Unfortunately, the friend for whom I was trolling wanted as easy a
method as the RETAIN statement. The ATTRIB statement was to change the
length of a variable brought in by a SET statement. So combining the RETAIN
and ATTRIB statements did not work (the length was not changed by the ATTRIB
statement).
- Michael "Mad Doggy" Davis
Michael L. Davis
Bassett Consulting Services, Inc.
North Haven CT 06473-3712
web: http://www.bassettconsulting.com
email: michael@bassettconsulting.com
tel: 203-562-0640