1
metadata_getattr我有一個SAS DI工作的前置宏,裏邊有我有以下代碼:呼叫從內部宏觀不工作
%let mtransformid = %str(omsobj:TransformationStep\&TransformID);
%let rc = %sysfunc(metadata_getattr("&mtransformid","Name",transform_name));
%put &transform_name;
不過,我不斷收到錯誤消息說在最後一步無法解決對&transform_name
的符號引用。我已經試過包裝在宏觀內的數據的步驟調用metadata_getattr
,但是這似乎並沒有幫助或者:
%let mtransformid = %str(omsobj:TransformationStep\&TransformID);
data _null_;
rc = metadata_getattr("&mtransformid","Name",trans_name);
call symputx("transform_name",trans_name);
%put &transform_name;
run;
以上%put
語句錯誤消息導致「視符號引用TRANSFORM_NAME沒有解決「,除非我更早地」初始化「了宏變量,在這種情況下,它的前一個值被輸出。
作爲參考,&TransformID
是一個宏變量,它在每次轉換運行時都由SAS DI自動生成。另外,這裏是我一直在試圖使用從獲得靈感一些相關鏈接:
任何幫助,不勝感激!
你在第二行缺少一個')' - 在實際的代碼中是這樣嗎? – Joe
此外 - 如果您嘗試在數據步驟中包裝它,並且想要轉到該路線,請在該問題中包含該代碼,如果您需要幫助,請! – Joe
嘿@Joe。謝謝指出缺少的括號(不,這不是實際的代碼,我做了重新輸入而不是複製粘貼的愚蠢的事情)。我將使用該修復程序以及我用於數據步驟方法的代碼進行更新,但無法使用。 – Rookatu