SAS Health and Life Sciences

Health care analytics, drug development, real-world evidence, and more
BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
RAMESH_KUMAR
Fluorite | Level 6

%MACRO util_RESULTS();

%let EDERV= RAND.ABCD 
%let Var=input(ABCD,$20.);
%let Var2=%SYSFUNC(SCAn(&EDERV.,4,'.|'));

%put &EDERV. &VAR1. &var. &VAR2.;

/*: ABCD is the Numeric variable with character values, EFGCH is character variable with character values, but both of them are populated with Numeric values in backend
which is not know in front end,Now i want to give the front value or backend value to derive a new variable on condition stated as below;

Log ERROR: The INPUT function referenced in the %SYSFUNC or %QSYSFUNC macro function is not found....?
how to resolve this issue..! */

data TWO;
set RAND;
ATTRIB &ENAME. Label="&label." Length=&length.;
If & Var. = "ABNORMAL" and &Var2. ne '' then NEW = &Var2.;
else If & Var. = "ABNORMAL" and &Var2. eq '' then NEW = "ABNORMAL";
else if & Var. in ('NOT DONE' , 'ND') then &ENAME. ='';
else NEW = & Var.;
run;

%MEND util_RESULTS;

1 ACCEPTED SOLUTION

Accepted Solutions
Astounding
PROC Star

The INPUT function is one of a short list of functions that cannot be used with %SYSFUNC.  You can use either INPUTN or INPUTC, whichever is appropriate.

 

Looking at what might be appropriate, however, it is possible you don't need a function at all.  Could you not use:

 

%let var = &var1;

 

It's not at all clear what you hope to accomplish when processing &VAR1 to get &VAR.

View solution in original post

2 REPLIES 2
Astounding
PROC Star

The INPUT function is one of a short list of functions that cannot be used with %SYSFUNC.  You can use either INPUTN or INPUTC, whichever is appropriate.

 

Looking at what might be appropriate, however, it is possible you don't need a function at all.  Could you not use:

 

%let var = &var1;

 

It's not at all clear what you hope to accomplish when processing &VAR1 to get &VAR.

RAMESH_KUMAR
Fluorite | Level 6

Thank you,  I have cleared the issue after referring SAS Community Blog

sas-innovate-white.png

Our biggest data and AI event of the year.

Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.

Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.

 

Register now!

Health and Life Sciences Learning

 

Need courses to help you with SAS Life Sciences Analytics Framework, SAS Health Cohort Builder, or other topics? Check out the Health and Life Sciences learning path for all of the offerings.

LEARN MORE

Discussion stats
  • 2 replies
  • 8438 views
  • 0 likes
  • 2 in conversation