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.

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

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
  • 1651 views
  • 1 like
  • 1 in conversation