実行時
次の中では、OPM 互換実行単位のセマンティクスを正確に保存することができます。
ILE COBOL アプリケーションにおいて、OPM 互換実行単位のセマンティクスを保存するには、次の条件に適合していなければなりません。
これらの条件に適合しない場合、ILE 活動化グループ内に暗黙のまたは明示的な STOP RUN が存在しても、活動化グループが終了しないことがあります。 活動化グループは活動状態のままで、さまざまな ILE COBOL プログラムが最後に使用された状態になります。
OPM COBOL/400 プログラムと ILE COBOL とを混合し、かつ OPM 互換実行単位のセマンティクスを可能な限り正確に保存するには、次の条件に適合していなければなりません。
上記の条件に適合しない場合、OPM と ILE の混在アプリケーション・プログラムについては、OPM 互換実行単位のセマンティクスは保存されません。 たとえば、ILE COBOL プログラムが *DFTACTGRP 内で実行されていて、それが STOP RUN を出すと、OPM COBOL/400 プログラムと ILE COBOL プログラムは両方とも最後に使用した状態で残ります。
ILE COBOL では、CALL、CANCEL、EXIT PROGRAM、STOP RUN、および GOBACK の制御操作の流れのため、OPM 互換実行単位が使用されていないなら、実行単位が異なる機能を実行する結果になります。
ILE COBOL では、実行時エラー・メッセージに接頭部 LNR が付けられます。 また、メッセージ・メンバーによっては、必ずしも OPM COBOL/400 の場合と同じではありません。
ILE COBOL では、実行単位が異常終了した場合、メッセージ CEE9901 が呼び出し側に戻されます。 OPM COBOL/400 では、同様の状況下でメッセージ LBE9001 が呼び出し側に戻されます。
ILE 例外処理と OPM 例外処理の違いのために、ILE COBOL ステートメントでは OPM COBOL/400 ステートメントと比較してより多くの例外を受け取ることがあります。
OPM COBOL/400 では、制御によりジョブが終了された場合、ファイル状況は 9A に設定されます。
ILE COBOL では、制御によりジョブが終了された場合、ファイル状況は 0A に設定されます。
OPM COBOL/400 では、最後のレコードがサブファイルに書き込まれた時点で、ファイル状況は 9M に設定されます。
ILE COBOL では、最後のレコードがサブファイルに書き込まれた時点で、ファイル状況は 0M に設定されます。
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.