Hi, I am getting an error when doing the below logic %MACRO LOOP ; data cat; set rpt; if var = 'x' THEN CALL SYMPUT("var0",trim(name0)); else if var = 'y' THEN CALL SYMPUT("var1",trim(NAME1)); else if var = 'z' THEN CALL SYMPUT("var2",trim(NAME2)); else if var = 'l' THEN CALL SYMPUT("var3",trim(NAME3)); else if var = 'k' THEN CALL SYMPUT("var4",trim(NAME4)); RUN; %IF "&var0" NE "" %THEN %FTP_LOOP(&var0); %IF "&var1" NE "" %THEN %LOOP1(&var1); %IF "&var2" NE "" %THEN %LOOP1(&var2); %IF "&var3" NE "" %THEN %LOOP1(&var3); %IF "&var4" NE "" %THEN %LOOP1(&var4); %mend loop; %macro loop1; '''' ''' %mend loop1; I am calling loop1 macro only when there are values in "var" variables,but when i am executing if any one of the var variable is not resolved it is taking the condition as true and running it. This is causing the job to abend. warning &var1 not resolved %IF &var1 NE " " is true. How to overcome this situation?
... View more