SAS:为什么 %include 不打印日志中包含的程序的注释?



我正在使用%include为main.sas运行许多较小的SAS程序。我希望将所有较小程序中的注释完全打印到日志中,就像我单独运行每个程序一样。我似乎找不到帮助我的选项(例如仅适用于包含程序的 mprint)。我是 SAS 的新手,这可能是一个非常简单的问题,但我真的要为此发疯了。现在我们正在谈论它,谁能帮我了解一下输入和源之间的差异?我发现很难从 SAS 帮助页面获得帮助。

非常感谢! 奇拉

很简单。 只需在主程序的开头添加option source2;即可。 这告诉SAS将代码和注释打印到使用%include运行的所有程序的日志中。

SOURCESOURCE2选项控制日志中是否包含 SAS 代码。这些通常默认为SOURCENOSOURCE2。您可以更改SOURCE2系统选项,或将/source2选项添加到%INCLUDE语句中。使用此小程序生成几个带有 SAS 代码的示例文件。

filename file1 temp ;
filename file2 temp ;
data _null_;
file file1 ;
put '* This line is from FILE1;';
file file2 ;
put '* This line is from FILE2;';
run;

现在使用带和不带SOURCE2选项的%INCLUDE

%include file1 file2 ;
%include file1 file2 / source2 ;

以下是日志的外观。

71         %include file1 file2 ;
74         %include file1 file2 / source2 ;
NOTE: %INCLUDE (level 1) file FILE1 is file /tmp/SAS_workAEE90000185C_localhost.localdomain/#LN00050.
75        +* This line is from FILE1;
NOTE: %INCLUDE (level 1) ending.
NOTE: %INCLUDE (level 1) file FILE2 is file /tmp/SAS_workAEE90000185C_localhost.localdomain/#LN00051.
76        +* This line is from FILE2;
NOTE: %INCLUDE (level 1) ending.
77

最新更新