新しくリリースされた SAS 9.2 でテストしている SAS アプリケーションがあります。SAS メタデータ リポジトリに新しい Library オブジェクトを作成するため、metadat_newobj 関数を呼び出しています。
rc = metadata_newobj( "SASLibrary", URI, Name );
9.1.3 では、関数が正常に実行されると (rc = 0)、新しく作成された Library オブジェクトの URI が URI 変数に取り込まれました。
SAS 9.2 では、戻り値は 0 (成功) で、Library オブジェクトは作成されますが (管理コンソールを使用して手動で確認しました)、URI 変数は空白のままであるため、属性などを設定する後続の操作は失敗します。
両方のバージョンのドキュメントには、この関数の出力パラメーターとして URI がリストされています。
誰もこれについて何か知っていますか?
編集:私が使用していたコードは次のとおりです。
put libraryName=;
rc = metadata_newobj("SASLibrary", libraryUri, libraryName);
if rc ne 0 then do;
/* Error handler */
return;
end;
put libraryUri=;
そして出力:
libraryName=HRLIB10
libraryUri=
PROC METADATA
代わりにこれを使用して回避しようとしていますが、これは機能しているようです。:\
編集 #2:これが SCL コード内にあることに言及していないことに気付きました。