2018年3月8日木曜日

【SYMBOLGENオプション】展開したマクロ変数の値をログに表示する



「なんのオプションか分からないけど、みんな使ってるから自分も使っとくか」みたいなパターンが多いのがこの「symbolgenオプション」





   options symbolgen;


って書くと、プログラム実行時に展開されたマクロ変数の値がログに表示されます。



例①
%let x=123;
%put &x;


ログ
SYMBOLGEN:  マクロ変数 X を 123 に展開します。
123



例②
%macro test( ds=, out=, by=);

    proc sort data=&ds out=&out;
       by &by;
    run;

%mend;

%test( ds=sashelp.class, out=work.out1, by=name );


ログ
SYMBOLGEN: マクロ変数 DS を sashelp.class に展開します。
SYMBOLGEN: マクロ変数 OUT を work.out1 に展開します。
SYMBOLGEN: マクロ変数 BY を name に展開します。




元に戻すには


   options nosymbolgen;



0 件のコメント:

コメントを投稿