我有一個SAS存儲過程,它通過webout執行一些html輸出。 在某些情況下(例如沒有數據可用),我想放置一個自定義的錯誤消息,並停止進一步執行。正確結束SAS存儲過程
我有一個萬客隆的解決方案,它迄今運行良好:
%if &varnobs = 0 %then %do;
data _null_;
file _webout;
put " &text1";
put " &text2";
put " &text3";
run;
ENDSAS;
%end;
但現在我被告知,使用ENDSAS是不是我們公司內部允許的,因爲它可以有各種副作用,也不僅可以停止進程,還可以停止完成會話。
現在我正在尋找替代品,我也嘗試了幾個選項的中止語句,但有一個問題是,中止放在日誌中的錯誤消息,以便不顯示我的自定義消息,但薩斯錯誤信息。同樣在中止文檔中指出(abort),即放棄不僅停止進程,而且會話。
我知道有像if-else或goto這樣的編程方式替代方法,而不是停止進程,但這不適用於我的特定問題。
所以,問題是:
執行過程中如何停止存儲過程,而不停止會議,沒有其他副作用,並沒有一個SAS錯誤消息?