在我的主要代码中说我有这个代码块:
%macros hi5;
%put hi five;
%mend;
%macros helloworld;
%put hello world;
%mend;
如何在SAS Enterprise Guide中显示如下内容? (通过日志或通过SAS表)
These are the user defined user macros:
hi5
hello world
(目的是让用户能够知道他们已经可以使用哪些宏)。
注意:%put _ALL_
仅列出所有宏变量,而不是宏(例如使用%macros and %mend
构建。)
答案 0 :(得分:7)
您可以通过PROC CATALOG
或dictionary.catalogs
到达那里。即使你不知道他们在哪里存储,后者也会有效。
proc sql;
select *
from dictionary.catalogs
where objtype='MACRO';
quit;
这将包含SASHELP
中的预定义宏,您可以使用where libname ne 'SASHELP'
排除这些宏。
答案 1 :(得分:1)
使用Enterprise Guide,SAS / Studio或其他新的访问方法运行SAS时,之前显示在WORK.SASMACR
目录中的已编译宏现在最终会出现在WORK.SASMAC1
中。至少在我探索过的环境中。
答案 2 :(得分:0)
我正在使用proc目录
case