是否有任何宏命令允许从另一个程序调用一个程序(%run_program()
伪代码)?
程序“设置”:
%let myvar="HELLO WORLD!";
程序“程序”:
%run_program(Settings); *Pseudo-code;
%put &myvar; *Should print *Should print "HELLO WORLD!";
是否有任何宏命令允许从另一个程序调用一个程序(%run_program()
伪代码)?
程序“设置”:
%let myvar="HELLO WORLD!";
程序“程序”:
%run_program(Settings); *Pseudo-code;
%put &myvar; *Should print *Should print "HELLO WORLD!";
这不是您问题的确切答案,但如果您只想确保在您可以将它们链接在一起Settings
之前运行它。Program
Run Process Flow
Settings
,Link Settings to...
,Program
从对话框中选择。Run Process FLow
并查看Hello World
日志中打印的内容。我认为您正在寻找该%include
功能。
您必须将“设置”保存为服务器上的独立程序,例如“/myserver/somefolder/settings.sas”。
然后您可以确保它通过以下方式运行:
...some code
%include ('/myserver/somefolder/settings.sas');
... more code
如果您将“settings.sas”的内容复制粘贴到当前程序中,该程序将完全运行。
除了流程之外,您还可以创建有序列表。这允许您以多个不同的顺序在单个流程流中运行程序(或运行流程的子集)。
您在 New -> Ordered List 中创建它,然后向其中添加程序,按照您想要的顺序向上/向下移动它们。然后您会在项目树的左侧看到有序列表,并且可以右键单击以运行它(或选择然后 F8)。
企业指南中没有运行程序的宏命令;如果你想做这样的事情,你可以通过 .NET 使用自动化。The SAS Dummy上的 Chris Hemedinger有一篇关于 EG 自动化的好文章。