BookmarkSubscribeRSS Feed
🔒 This topic is locked. We are no longer accepting replies to this topic. Need further help? Please sign in and ask a new question.
SAS_Tipster
Moderator

Did you know that you can now make your Global and Local macro variables READONLY? New options on the %GLOBAL and %LOCAL statements allow you to not only make variables so that they cannot be inadvertently changed, but you can also assign them initial values.

 

%global/readonly dsn=clinics;

%macro tryit;
  %local dsn;
  %* does other stuff;
%mend tryit;

%* The macro %TRYIT will fail;
%tryit 

The use of these options can help you avoid macro variable collisions, but there are dangers. Once specified as readonly, you can no longer create local versions of this macro variable. This can be a big problem if a called macro also attempts to create another instance of the macro variable - even using the %LOCAL statement.

 


Thanks to Art Carpenter for sharing this tip on sasCommunity.org.

Ready to join fellow brilliant minds for the SAS Hackathon?

Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.

Register today!
Visit a random SAS tip This SAS Tips board is not open for replies or comments, but we welcome your feedback and questions. Have a question or comment about this tip? Start a new topic in one of our discussion boards, and reference this tip topic.
Discussion stats
  • 0 replies
  • 1513 views
  • 1 like
  • 1 in conversation