EXIT METHOD ステートメントは、呼び出されるメソッドの終わりを指定します。
EXIT METHOD はメソッドの手続き部にしか指定できません。EXIT METHOD を使用すると、メソッドの実行が終了され、 制御は呼び出しステートメントに戻ります。 内包メソッドで手続き部 RETURNING 句を指定している場合、 その RETURNING 句によって参照されるデータ項目の値が、メソッド呼び出しの結果となります。
呼び出しごとに、メソッド特定のデータを最後に使われた状態 にする必要がある場合は、 それをメソッド作業用ストレージ内で宣言します。呼び出しごとに、メソッド特定のデータを初期 状態にする必要がある場合は、それをメソッド・ローカル・ストレージ内で宣言します。
制御がメソッド定義内の EXIT METHOD ステートメントに達した場合、 制御は呼び出し側プログラムまたはメソッド内の INVOKE ステートメントのすぐ後の点に戻ります。 呼び出し側プログラムまたはメソッドの状態は、 それが INVOKE ステートメントを実行した時点で存在していた状態と同じです。
ただしデータ項目の内容、および呼び出し側プログラム (またはメソッド) と 呼び出されるメソッド間で共用されたデータ・ファイルの内容は、 変更されている可能性があります。 呼び出されるメソッドの状態は変更されませんが、 メソッドによって実行されたすべての PERFORM ステートメントの範囲の終わりに達したとみなされる場合は除きます。
EXIT METHOD ステートメントを一連の命令ステートメントの最後のステートメントにする必要はありませんが、EXIT METHOD 以降のステートメントは実行されなくなります。
呼び出されるメソッド内に次に実行可能なステートメントがない場合は、 暗黙の EXIT METHOD ステートメントが実行されます。