SAS:如何忽略错误?
SAS : How to ignore errors?
我的 SAS 代码包含多个 data
步骤和 proc sql
--> 彼此无关。其中一些可能会引发错误。发生这种情况时,其余代码将终止。
我需要我的代码继续执行。即使抛出错误,也只是将其写入日志 ERROR : ...
但仍继续执行。我怎样才能做到这一点 ?
我尝试了一些选项from here
options noerrorabend;
但是我找不到任何有用的东西
我会在生产中小心执行此操作,但您似乎可以通过将此行放在每个容易出错的数据步骤和过程之后来恢复正常处理模式。它基本上取消了 SAS 在遇到错误时切换到的通常模式。
options obs=max nosyntaxcheck;
似乎是设计问题。
将每个不相关的步骤放入不同的 .sas
文件中。如果它们不相关,它们无论如何都不应该在同一个文件中。
从 UNIX 脚本、windows 批处理文件、SAS 调度程序或您碰巧使用的任何文件中单独调用每个 .sas 文件。
如果其中一个有问题,不会以任何方式影响下一个。
EDIT : Do NOT 尝试使用 SAS %include
语句一个接一个地调用它们,因为这将使用相同的 SAS 会话,一个问题会影响下一个。
我的 SAS 代码包含多个 data
步骤和 proc sql
--> 彼此无关。其中一些可能会引发错误。发生这种情况时,其余代码将终止。
我需要我的代码继续执行。即使抛出错误,也只是将其写入日志 ERROR : ...
但仍继续执行。我怎样才能做到这一点 ?
我尝试了一些选项from here
options noerrorabend;
但是我找不到任何有用的东西
我会在生产中小心执行此操作,但您似乎可以通过将此行放在每个容易出错的数据步骤和过程之后来恢复正常处理模式。它基本上取消了 SAS 在遇到错误时切换到的通常模式。
options obs=max nosyntaxcheck;
似乎是设计问题。
将每个不相关的步骤放入不同的 .sas
文件中。如果它们不相关,它们无论如何都不应该在同一个文件中。
从 UNIX 脚本、windows 批处理文件、SAS 调度程序或您碰巧使用的任何文件中单独调用每个 .sas 文件。
如果其中一个有问题,不会以任何方式影响下一个。
EDIT : Do NOT 尝试使用 SAS %include
语句一个接一个地调用它们,因为这将使用相同的 SAS 会话,一个问题会影响下一个。