論理式が正の場合のみ次の命令に遷移させる、文字通りのチェック用命令。
* 概要 [#j4d77dd6]
偽の場合は、[[イベントブロック>ABAP/イベントブロック]]・[[ダイアログモジュール>ABAP/ダイアログモジュール]]・[[関数>アドオン/関数]]の処理を抜ける。
** 用法 [#m1e61e8f]
[[LOOP〜ENDLOOP>ABAP/LOOP]]・[[WHILE〜ENDWHILE>ABAP/WHILE]]・[[DO〜ENDDO>ABAP/DO]]・[[SELECT〜ENDSELECT>ABAP/SELECT]]などのループ中の場合は次のレコード(次のループ)に遷移し、SAPではCHECK命令をこの用法での利用のみとすることを推奨している。
[[IF>ABAP/IF]]でネストが深くなったりすることを考えれば、まぁ一画面程度の[[関数>アドオン/関数]]の中くらいだったら構わんだろうとも思うが、ブロック処理やLOOP処理の終了方法は「単に該当のブロック処理から抜けたい」「機能そのものを終わらせたいのか」など何通りかある事を考えると、LOOPの外では[[EXIT>ABAP/EXIT]]や[[RETURN>ABAP/RETURN]]命令などで記述した方が良いかもしれない。
** サンプル [#p8e30ede]
# CHECK : SY-SUBRC = 0.
CHECK : SY-SUBRC = 0.
* その他 [#lb3435f1]
関連する命令としては、[[CONTINUE>ABAP/CONTINUE]]・[[EXIT>ABAP/EXIT]]・[[REJECT>ABAP/REJECT]]・[[STOP>ABAP/STOP]]・[[RETURN>ABAP/RETURN]]などがある。
~
~
CENTER:【スポンサードリンク】
#htmlinsert(amazon_book_sap_system_implement)
~
~
----
#pcomment(reply)