ANYCONDITION 条件

ブロック内で発生する任意の条件をトラップする ON-unit を確立 (およびキャンセル) します。

有効/無効の状態

常に有効です。

結果

基本的な条件と同じ結果になります。

発生

他の ON-unit では処理できない信号状態を処理する ON 文の中のみです。ANYCONDITION ON-unit は、ブロック内で確立された他のすべての ON-unit が調査され、信号状態と一致しないことが確認された後に実行されます。

制約事項

SIGNAL ANYCONDITION はサポートされていません。

  • ON ANYCONDITION を使用する場合、無限ループを回避するために ON FINISH の使用が必要になる場合があります。
  • 条件が発生すると、呼び出しスタックが逆方向にたどられ、その条件の ON-unit を持つブロックが検索されます。ON ANYCONDITION ユニットまたは ON ANYCONDITION ON-unit を含む最初のブロックが見つかると、検索は停止します。何も見つからず、条件に対する暗黙の処理が ERROR への昇格である場合、再び逆方向にたどられ、ON ERROR ON-unit の検索が続行されます。
  • どのような条件が処理されているかを確認するには、ANYCONDITION ON-unit の ONCONDID 組み込み関数を使用し、ONCONDCOND 組み込み関数を使用して CONDITION 条件の名前を確認します。ONFILE など他の ON 組み込み関数を使用して、正確な原因およびその他の関連情報を確認できます。

その他の情報

省略形
ANYCOND
条件コード
一意の条件コードはありません。
暗黙の処理
基本的な条件と同じ処理になります。
通常の復帰
基本的な条件と同じ復帰になります。