メタデータから SAS 登録テーブルのリストを取得するために、以下のコードを作成しました。正常に動作しますが、WorkTables ( PhysicalTableのサブタイプ)が大量にあるため、実行に時間がかかります。
data work.tables (keep=uri name);
length uri name $256;
n=1;
do while(metadata_getnobj("omsobj:PhysicalTable?@Id contains '.'",n,uri)>=0);
n+1;
if substr(uri,8,9)='WorkTable' then continue;
if metadata_getattr(uri, "SASTableName", name)=0 then output;
end;
run;
メタデータ クエリ自体で WorkTable タイプを除外できるように uri を調整する方法はありますか?
たとえば、次のようにします (動作しません)。
omsobj:PhysicalTable?@Id contains '.' and @MetadataType ne 'WorkTable'