我的SAS代码包含多个data
步骤和proc sql
- >彼此无关。其中一些可能会抛出错误。发生这种情况时,其余代码将终止。
我需要我的代码继续执行。即使抛出错误,只需将其放入日志ERROR : ...
,但仍继续执行。我怎样才能做到这一点 ?
我尝试了一些选项from here
options noerrorabend;
但我找不到任何有用的东西
答案 0 :(得分:5)
我在生产中要小心这样做,但看起来你可以通过在每个数据步骤和易于出错的触发之后放置这一行来恢复正常的处理模式。它基本上撤消了SAS在遇到错误时切换到的常用模式。
options obs=max nosyntaxcheck;
答案 1 :(得分:1)
似乎是一个设计问题。
将您的每个不相关的步骤放入不同的.sas
文件中。如果他们不相关,他们就不应该在同一个文件中。
从UNIX脚本,Windows批处理文件或SAS调度程序或您正在使用的任何内容中单独调用每个.sas文件。
如果其中一个有问题,它不会以任何方式影响下一个。
编辑:不尝试使用SAS %include
语句一个接一个地调用它们,因为这将使用相同的SAS会话,并且一个人的问题会影响下一个。