BookmarkSubscribeRSS Feed
Sharathr
Obsidian | Level 7
Hi ,

The below code is throwing an error even after using an nrstr to convert the if statement as text to be used in remote server. Kindly let me know how to make this work
%macro test;
Rsubmit;
%let country =USA;
%nrstr(%if country=USA %then %do;)
%put "the country is &country.";
Endrsubmit;
%mend test;
%test;
3 REPLIES 3
novinosrin
Tourmaline | Level 20

i think you are missing closing parenthesis and &

 

%let country =USA;
%nrstr(%if &country=USA %then %doSmiley )
%put the country is &country.; /*quotes are not needed in a macro statement that executes at compile time*/
Endrsubmit;
%mend test;
%test;

Reeza
Super User

Make it work locally and then add back your RSUBMIT blocks. The RSUBMIT are not the issue here. 

Reeza
Super User

And formatting your code makes it much easier to read and follow.

 

%macro test;
%let country =USA;

%if &country=USA %then 
    %put "the country is &country.";
%else
    %put "Condition FAIL";

%mend test;

%test;

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!

Register now

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 3 replies
  • 34903 views
  • 0 likes
  • 3 in conversation