2015年6月8日月曜日

ファイル参照をいっぺんに取り消す方法


ライブラリをいっぺんに取り消す方法のほぼコピペ記事ですが、

最近、「データステップ内でファイル参照を取り消したいんだけど出来る?」って質問を頂いたので、解説したいと思います。


以下のようにファイル参照が割り当てられてたとします。

 filename FILE1  "適当なファイル参照パス1";
 filename FILE2  "
適当なファイル参照パス2";
 …
 filename FILE10 "
適当なファイル参照パス10";
 filename TEST   "適当なファイル参照パス11";



ファイル参照名を1つまたは全て取り消す方法は以下の通り。
*** 1つだけ取り消す ;
 filename FILE1 clear;

*** 全て取り消す ;
 filename _ALL_ clear;


次に、一部のファイル参照名、たとえば TEST 以外の FILE1~FILE10 をいっぺんに取り消したい場合、FILENAME関数が便利。

data _NULL_;
   do i = 1 to 10;
       RC = filename( cats("FILE", i) ) ;
   end;
run;

filename("ファイル参照名")で該当のファイル参照名を取り消すことができます。

サンプルではまずCATS関数で"FILE"という文字と変数 i の値を結合します。
その結合文字が表すファイル参照名をFILENAME関数で取り消してます。


0 件のコメント:

コメントを投稿