1
我嘗試使用下面的代碼與文件夾中的前綴列出所有的文件名,並調用一個函數命名CALCU與文件名:SAS列表中的所有文件名的問題(授權一些文件,但不是全部)
proc contents data=&libref.._all_ noprint out=contents; run;
data _null_;
set contents;
by memname;
if first.memname ;
if upcase(memname) =: %upcase("&prefix");
call execute(cats('%nrstr(%CALCU)(',memname,')'));
run;
當我有完整的授權訪問目錄中的所有文件時,代碼正常工作。但是現在我發現實際上我並沒有訪問某些帶有某些前綴的文件(幸運的是,我實際上並不需要那些我無法訪問的文件)。
然而,SAS只是不斷拋出的錯誤,如
ERROR: User does not have appropriate authorization level for file
TAQ_CT.CTM_20120222.DATA.
即使這不是我想要的文件。
我想知道如何跳過目錄中的一些文件?
我試圖刪除一切,但下面的代碼行:
proc contents data=&libref.._all_ noprint out=contents; run;
不過,似乎我甚至不能閱讀的內容適當的時候,我沒有訪問所有文件( SAS只是一直拋出我無法訪問的文件上的錯誤)。
它說'錯誤:文件SASUSER.VMEMBER.DATA不存在.'現在 –
'SASHELP.VMEMBER'不'SASUSER'。 – Joe
謝謝@Joe和@DomPazz!有效。 –