2019年2月14日木曜日

定義済みのオプションがないCASライブラリ

SAS Management ConsoleからCASライブラリを定義したが、詳細設定の中に定義済みライブラリのオプションが無かった。これがないと、EGを起動したときに、ライブラリを右クリックして割り当てしないと、データを参照できない。回避策としては、コードタスクで割り当てを仕込んでおけば回避できる。

なんでPre-Assignの定義がないのか不思議だが、いったん放置します。


2019年2月12日火曜日

OSとSASのエンコーディングが違う設定で日本語のディレクトリを作るとどうなるか?

クイズです。
Linux環境において、OSのエンコーディングがUTF-8、SASはSJISの場合、以下のコードを実行すると、作られるディレクトリ名はどのようになるでしょうか?

options dlcreatedir;
libname newdir '/var/tmp/漢字ディレクトリ';


  1. OS上のディレクトリ名は、SASと同じSJISになる。 .
  2. OS上のディレクトリ名は、OSのロケールと同じUTF8になる。 .
  3. OS上のディレクトリ名は、文字化けして正しく表示できない。 .
  4. エンコーディングの不一致でエラーが発生する。


正解は、3.でOSと同じロケールでディレクトリが作成されます。これは、SASはOSのロケールと異なる場合には、変換してOSに合わせてディレクトリを作成する動きをします。これは実験の結果でわかったことです。