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 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

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
  • 11576 views
  • 0 likes
  • 3 in conversation