10

簡単な質問

ウィンドウ環境内からさらにSASステートメントの実行をキャンセルするワンライナー(またはかなり短い)方法はありますか。

これらは私が知っている方法ですが、特にコメントの多い巨大なプログラムでは面倒です。ABORTandステートメントを試しましたSTOPが、それらはウィンドウ環境を閉じますが、特定の時点で実行を停止して、楽しい道を進むことだけが必要です。

ありがとう

4

3 に答える 3

7

これは、SAS-L で頻繁に発生するものです。答えは、主にあなたが何をしているかに依存するということです。

run cancelエラーのために実行を停止したい場合は、おそらくこの方法が最適です。プログラムの先頭で次のことを行います。

%let cancel =; *or any macro variable name, but cancel is most logical;

次に、すべての実行ステップで次のことを行います。

data whatever;
... do stuff ...;
run &cancel;

そして、潜在的なエラーが発生するたびに、エラー状態をチェックし、それがヒット%let cancel=cancel;した場合は問題ありません。

%abortマクロを使用している場合は、オプションを使用しないか、 のみを使用する限り、でスムーズにマクロを終了できますcancel。実行内容によっては、コードをマクロ (またはマクロ) で実行するように設定し、このオプションを使用することもできます (ただし、ログの明瞭さが失われるという欠点があります)。

最後に、コードのサブセットを実行できることに興味がある場合は、個別に実行する可能性のあるビットについて複数の SAS プログラムでコードを記述し%include、マスター プログラムから使用してそれらをすべて一緒にグループ化することをお勧めします。共有される設定が必要なマクロ変数を使用します。これは、EG で多数の小さなプログラムを作成し、プロセス フロー ダイアグラムを使用してそれらをグループ化する方法に似ています。

于 2013-08-16T20:22:39.790 に答える