Hello, I wrote this macro to create multiple macro variables that I will use later in my program. The code works juste fine, however if I want to call these macro variables later in open code, I need to make them global if I understand correctly. Is there a way to implement this easily in my code so that all these macro variables can be called later? Thank you so much! Here's my code: %MACRO INPUTS_PARAMETERS ();
proc sql ;
select Intercept
into :Intercept
from EXTLIB.COEFF_REFERENCE
;
%do i=1 %to %sysfunc(countw(&INPUTS_EF.));
proc sql ;
select T_%scan(&INPUTS_EF.,&i.)_M801010
into :Coeff_%scan(&INPUTS_EF.,&i.)
from EXTLIB.COEFF_REFERENCE
;
proc sql ;
select Slope
into :Slope_%scan(&INPUTS_EF.,&i.)
from EXTLIB.TRANSFO_PARAMS_GLOBAL
where Variable = "%scan(&INPUTS_EF.,&i.)_M801010"
;
proc sql ;
select Midpoint
into :Midpoint_%scan(&INPUTS_EF.,&i.)
from EXTLIB.TRANSFO_PARAMS_GLOBAL
where Variable = "%scan(&INPUTS_EF.,&i.)_M801010"
;
%end;
%do i=1 %to %sysfunc(countw(&INPUTS_SEC.));
proc sql ;
select %scan(&INPUTS_SEC.,&i.)
into :Coeff_%scan(&INPUTS_SEC.,&i.)
from EXTLIB.COEFF_REFERENCE
;
quit;
%end;
%MEND INPUTS_PARAMETERS;
%INPUTS_PARAMETERS ();
... View more