BookmarkSubscribeRSS Feed
sskt
Quartz | Level 8

proc fcmpでいくつか関数を作り、Autoexec.sasに設定を反映させているのですが、

同じWindowsでも実行できる端末とそうでない端末が発生します。

(SASを起動し、ライブラリの中を見ると実行可否に関わらずFCMPによるデータセット(options cmplibで参照しているもの)が作成されています。

実行できない端末では、「abcは不明な関数名、またはアクセスできません。」

と表示されます。同じ設定をし、同じサーバーのものを参照しているのですが。)

 

どのようにすれば良いでしょうか。

一つ気になっているのは64bitと32bitの違いなのですが、

特に問題はないでしょうか?

 

よろしくお願いいたします。

1 REPLY 1
japelin
Rhodochrosite | Level 12

直接の回答ではないのですが、トラブルシューティングとして以下の情報があると原因が絞り込みやすいのではないかと思います。

 

> いくつか関数を作り

動作しないという環境では全ての関数が動作しないのか、それとも一部の関数のみが動作しないのか。

一部だけであれば関数で使用してるロジック(プロダクト等)依存かもしれません。

 

Autoexec.sasに設定を反映

autoexecだと起動時にログは出ないと思います。

通常起動後にそれぞれの環境で実行して、関数が使えるようになるのかどうかを確認されては

いかがでしょうか。

 

> 実行可否に関わらずFCMPによるデータセット(options cmplibで参照しているもの)が作成されています

FCMPによって作成されるデータセット自体は同じでしょうか。

 

> 同じ設定をし、同じサーバーのものを参照

cmplibをローカルに指定して試して(SASで実行/autoexecで実行)みてはいかがでしょうか。

 

> 64bitと32bitの違い

アクセスするリソースによっては互換性がないものもあります。

例えばsasカタログ(フォーマット、マクロ、その他システム等)。これは32bitで作成されたものに64bit版SAS

からはアクセスができず、また、逆も同じです。プログラム中にこういったリソースにアクセスしようとしていないかどうか。

 

あとは、関係ないとは思いますが念の為

proc product_status;run;

でインストールされているプロダクトとバージョンを比較してみてください。

 

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

Discussion stats
  • 1 reply
  • 975 views
  • 1 like
  • 2 in conversation