ログにテキストを出力する

[OS] ALL
[リリース] ALL
[キーワード] Base, DATA, PUT, FILE LOG, PUTLOG

[質問]

外部ファイルへの出力を行なっているDATAステップで、テキストをログへ出力するにはどのようにすればいいでしょうか。

[回答]

SAS System 8以前では、FILEステートメントで出力先を切り替える必要があります。
出力先がログの場合は「FILELOG;」を指定します。


  DATA _null_;
    SET sashelp.class END=eof;
    FILE 'C:¥MyFiles¥class.txt'; /* 外部ファイルへ出力 */
    PUT name sex age;
    IF eof THEN DO;
      FILE LOG;                                  /* ログへ出力 */
      PUT '*** ' _n_ '件 ***';
    END;
  RUN;

SAS System 9から、テキストをログへ出力する機能を持つPUTLOGステートメントがサポートされています。
PUTLOGステートメントを使用すると、FILEステートメントで出力先をログに切り替える必要がありません。


  DATA _null_;
    SET sashelp.class END=eof;
    FILE 'C:¥MyFiles¥class.txt';
    PUT name sex age;
    IF eof THEN
      PUTLOG '*** ' _n_ '件 ***'; /* PUTLOGステートメント */
  RUN;