@brainupgraded wrote:
I am trying to add a suffix to all variables, but below codes give me an error message. The message says,
"NOTE 137-205: Line generated by the invoked macro "SUFFIXTOALLVAR". 2 quit; data &ndsn;set &lib..&dsn (rename=(&list)); run; - 23 ERROR 23-7: Invalid value for the RENAME option."
I am not much familiar with SQL, so I would really appreciate it if anybody can help.
%macro suffixtoallvar(lib, dsn, suffix, ndsn);
proc contents data=&lib..&dsn noprint;
run;
proc sql noprint;
select cats(name,'=',name,'_&suffix')
into :list
separated by ' '
from dictionary.columns
where libname='WORK' and memname='&ndsn';
quit;
data &ndsn;set &lib..&dsn (rename=(&list));
run;
%mend suffixtoallvar;
%suffixtoallvar(MM18, RES_WK_MUSICEVENT, me, res_wk_me);
In addition to the macro variable and quotes issue, the DICTIONARY tables will want the MEMNAME to also be all capitals as you show WORK since that is how the data set names are stored. So "res_wk_me" would not be in the dictionary table so the list would be empty because a matching member name wasn't found.
... View more