SAS Life Science Analytics Framework and the clinical data products from SAS

Input Function in Macros variable conversion from character to numeric for automation prosective

Accepted Solution Solved
Reply
New Contributor
Posts: 4
Accepted Solution

Input Function in Macros variable conversion from character to numeric for automation prosective

[ Edited ]

%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;


Accepted Solutions
Solution
‎06-09-2016 12:42 PM
Respected Advisor
Posts: 4,757

Re: Input Function in Macros variable conversion from character to numeric for automation prosective

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


All Replies
Solution
‎06-09-2016 12:42 PM
Respected Advisor
Posts: 4,757

Re: Input Function in Macros variable conversion from character to numeric for automation prosective

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.

New Contributor
Posts: 4

Re: Input Function in Macros variable conversion from character to numeric for automation prosective

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

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

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