[prev in list] [next in list] [prev in thread] [next in thread]
List: sas-l
Subject: SAS Forum: How to pass SAS observation value in macro one by one
From: Roger DeAngelis <rogerjdeangelis () GMAIL ! COM>
Date: 2017-06-29 20:27:44
Message-ID: 5860065026206198.WA.rogerjdeangelisgmail.com () listserv ! uga ! edu
[Download RAW message or body]
SAS Forum: How to pass SAS observation value in macro one by one
Running two proc prints based on meta data of dataset names
WORKING CODE
============
COMPILE if _n_=0 then DOSUBL
* get meta data;
select quote names into :names
MAIN
do names
DOSUBL
proc print data=name
MAIN
if syserr stop printing datasets
end
see
https://goo.gl/sH1Wdq
https://communities.sas.com/t5/Base-SAS-Programming/How-to-pass-SAS-observation-value-in-macro-one-by-one/m-p/371683
data meta;
input sd1 $;
cards4;
class
cars
iris
;;;;
run;quit;
%symdel sd1 rct dsn;
data _null_;
* get meta data;
if _n_=0 then do;
%let rc = %sysfunc(dosubl('
proc sql;
select
quote(sd1)
into
:sd1 separated by ","
from
meta
;quit;
'));
end;
do dsns=&sd1;
call symputx('dsn',dsns);
rc=dosubl('
proc print data=sashelp.&dsn;
run;quit;
%let rct=&syserr;
');
if input(symget('rct'),6.) eq 0 then putlog dsns " printed sucessfully";
else do;
putlog dsn " print failed stopping on " dsns;
stop;
end;
end;
run;quit;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic