SAS程序与set语句中的本地库

use*_*367 1 sas

我正在学习新的RSUBMIT,并且我发现当我使用数据语句执行rsubmit时,它不会在set语句中使用本地库?

我们如何处理这个?

我的代码

signon server;

rsubmit;
data x; 
set loca.mydata ;run;
endrsubmit;
Run Code Online (Sandbox Code Playgroud)

这引发了错误说

ERROR: Libref loca is not assigned.
Run Code Online (Sandbox Code Playgroud)

set语句数据集是否也应存在于远程库中?

小智 5

当您提交一些代码时,您基本上将其发送到其他地方以进行处理,这意味着远程服务器上不存在任何本地分配.

使用"LOCA"库的一种方法是在您提交代码后重新分配它:

signon server;
rsubmit;
libname LOCA "<path here>";
data x;
set loca.mydata; run;
endrsubmit;
Run Code Online (Sandbox Code Playgroud)

第二种方法是使用inheritlib在会话之间共享库:

signon server;
rsubmit inheritlib=(LOCA=R_LOCA);

data x;
set R_LOCA.mydata; run;
endrsubmit;
Run Code Online (Sandbox Code Playgroud)

在这两种情况下,您还需要从远程服务器检索数据集"WORK.X".我展示的两种方法也允许你这样做.