2017-08-29 14 views
1

SASでステップ(繰り返し)で作成されたすべての出力(データセット/ファイル)のリストを取得する方法はありますか? 私は自動変数を使用しようとしましたが、& syslastと& sysdsn変数を使用して最後に作成されたデータセットしか取得できませんでした。しかし、データステップで複数のデータセットが作成されるとどうなりますか?リストなどのキーワードを使用せずにSASで自動的に名前や詳細を取得するにはどうすればよいですか?可能な方法はありますか? ご提案ください! ありがとうございました!SASステップで作成されたすべての出力を一覧表示

答えて

0

私はこれが可能ではないと思います。私が考えることができる唯一の方法は、データのステップ/反復に続くログを解析することです。あなたが最初のプロセスを実行する必要があり、その後、あなたが出力を取得します注意点と、ログにこれを報告します

/* set up a fresh log prior to your iteration */ 
%let logloc=%sysfunc(pathname(work))/mylog.txt; 
proc printto log="&logloc" new; 
run; 

/* run your iteration */ 
data mystep with lots of output datasets; 
    set something; 
run; 

/* return to normal logging */ 
proc printto log=log; 
run; 

data _null_; 
    infile "&logloc"; 
    input; 
    if _infile_=:'data' then do; 
    /* perform log scanning */ 
    /* will likely need some complex logic to be robust!*/ 
    end; 
run; 
+0

ありがとうアラン、私も同様のラインを考えていたし、systaskを使って別のタスクを提出するのを助けるかもしれないマクロを書こうとしている。それはログを追いかけることができ、望ましい出力を生成できる。 – Rhea

0

PROCのSCAPROC:あなたはのようなものを使用することができます。このため

+0

ありがとうReea、それは私の目的を解決しません。 – Rhea

+0

私は、出力が通常のログよりも解析がはるかに簡単で、キーワードDATASET OUTPUTを探すと仮定します。 – Reeza

関連する問題