I came up with another method. If you want to sort all the datasets in a library, then it does make sense to use PROC DATASETS before using CALL EXECUTE. Otherwise, you can list the datasets in a CARDS statement in the same DATA step as the CALL EXECUTE statement. data _null_;
input datasets $char50. ;
call execute
("proc sort data=work."||strip(datasets)||
"(keep=cum_freq cum_date rename=(cum_freq="||strip(datasets)||"))"||
"out="||strip(datasets)||";"||
"by ByVariable; run;");
cards;
dataset1
dataset2
dataset3
;run;
... View more