SAS脚本通过EG工作,但在linux中失败

时间:2017-07-10 19:42:39

标签: sas enterprise-guide

我正在尝试重新设置并获取文件的path。然后,我想打开文件并从中获取另一个文件。

我的问题是我的脚本works在通过Enterprise Guide执行时没有任何问题,但fails如果通过命令行执行。

  

警告:宏GET_DATA的表观调用未解析。

好像我的path变量没有设置,当我通过命令行运行它时,我的宏没有被执行。

data _null_;
    set files_to_parse; 
    count + 1;
    call execute('%get_data('||path||', '||count||')');
run;

这里我试图将excel实例化为库

%macro get_data(path, cnt);
/* Get current iteration of excel spreadsheet */
libname xl XLSX "&path.";
%mend get_data;

2 个答案:

答案 0 :(得分:2)

确保在尝试使用宏之前已定义宏。也许对于EG你的程序是有效的,因为你以前编译过宏。

答案 1 :(得分:-1)

错误是%get_data未编译,而不是它没有解析路径。

很难说为什么你给我们的信息,但是因为你看到EG在命令行中运行的差异,我怀疑你要么将宏编译为EG中的autoexec进程流程的一部分,或者你有通过命令行配置文件未正确设置的自动调用宏库。如果你不知道这些是什么意思,请与你的SAS管理员联系。