我正在学习RSUBMIT,我发现当我使用数据语句执行rsubmit时,它不会在set语句中使用本地库吗?
我们如何处理?
我的代码
signon server;
rsubmit;
data x;
set loca.mydata ;run;
endrsubmit;
这引发错误说
ERROR: Libref loca is not assigned.
如果set语句数据集也存在于远程库中吗?
答案 0 :(得分:5)
当您提交一些代码时,您基本上将其发送到其他地方以进行处理,这意味着远程服务器上不存在任何本地分配。
使用“LOCA”库的一种方法是在您提交代码后重新分配它:
signon server;
rsubmit;
libname LOCA "<path here>";
data x;
set loca.mydata; run;
endrsubmit;
第二种方法是使用inheritlib:
在会话之间共享库signon server;
rsubmit inheritlib=(LOCA=R_LOCA);
data x;
set R_LOCA.mydata; run;
endrsubmit;
在这两种情况下,您还需要从远程服务器检索数据集“WORK.X”。我展示的两种方法也允许你这样做。