sas数据集成工作室4.6的空数据集



在作业中,当它读取空数据集时,我希望它不要因错误而中止作业,而是继续进行下一个计划的作业。对如何做到这一点有什么建议吗?

如果您先运行这段代码,检查是否存在数据集和超过0个观察值,SAS将以errorlevel 0退出,您的调度程序应该继续:

%let endsas=;
data _null_;
  if not exist("sashelp.class2") then call symputx("endsas","endsas");
run;
&endsas;
/*Since we are here, the dataset exists, continue to check for 0 obs:*/
%let endsas=endsas;
data _null_;
  set sashelp.class2;
  call symputx("endsas","");*if not 0 obs, this will be executed;
  stop;*Stop, because we only need to run 1 obs;
run;
&endsas;

请注意,如果数据集不存在或为空,则不会提交此之后的代码。

由于您正在谈论计划作业,这意味着您已经使用DI Studio部署了多个作业用于调度目的,并将您需要作为作业流运行的所有部署作业添加到SAS Management Console -> Schedule Manager Plugin中的JobFlow中。

如果是这种情况,那么连接调度管理器插件中的作业->调度流将弹出触发下一个di studio作业流的条件。您可以设置条件以触发下一个作业,而不管条件如何。

最新更新