実行時メッセージは、以下の形式で表示します。
日付と時刻 メッセージ番号 [プロセスID スレッドID] メッセージ本文
日付と時刻は次のように表示されます。
YYYY-MM-DD HH:MM:SS (西暦-月-日 時:分:秒)
表示される時間はローカル時間(日本の場合、GMT+9時間)です。
メッセージ番号は次のように表示されます。
JMPnnnnI-W
nnnn : メッセージの通し番号を示します。
I : オペレーターの応答の必要性を示す以下の文字を表示します。
I : オペレーターの応答が不要であることを示します。
A : オペレーターの応答が必要であることを示します。
重大度コードの意味および復帰コードとの関係を下表に示します。
また、バッチファイルからCOBOLプログラムを直接実行する場合、COBOLプログラムの復帰コード(PROGRAM-STATUS)は、そのバッチファイル中のCOBOLプログラム実行直後のERRORLEVELに反映されます。なお、ERRORLEVELの使用方法については、各システムのマニュアルまたはオンラインヘルプなどを参照してください。
重大度コード | レベル | 意味 | 復帰コードへの影響 |
---|---|---|---|
I (INFORMATION) | 通知メッセージ | ランタイムシステムが検出した情報です。プログラムの実行に支障はありません。 | なし |
W (WARNING) | 軽度のエラー | プログラムの実行に支障はありません。ただし、実行結果が利用者の意図どおりかを確認する必要があります。 | なし |
E (ERROR) | 中程度のエラー | エラーが存在しますが、適当な仮定に従って処理を続行します。 | あり(注1) |
U (UNRECOVERABLE) | 致命的なエラー | プログラムの実行を中断し、終了処理を行います。 | あり(注2)(注3) |
注1 : Eレベルのメッセージが出力された場合、COBOL実行単位の終了時に復帰コードが設定されます。このときEレベルのメッセージは復帰コード12と評価され、特殊レジスタPROGRAM-STATUSの値と比較して大きい方が、復帰コードとして設定されます。
注2 : Uレベルのメッセージが出力された場合、プログラムは異常終了します。このとき、復帰コードとして255が設定されます。また、COBOLプログラムの強制終了を行った場合も、復帰コードとして255が設定されます。
注3 : [Win32][Winx64]Uレベルのメッセージが出力された時に、自動的に診断機能が起動するように設定しておくと、診断機能がエラーを検出し、診断レポートを出力するので、その出力情報からエラーの原因を調査することができます。
参照
[Win32]“NetCOBOLユーザーズガイド”の“22.1 診断機能”
[Winx64]“NetCOBOLユーザーズガイド”の“20.1 診断機能”
エラーの検出されたプログラムのプロセスIDおよびスレッドIDを以下の形式で設定します。
[PID:mmmmmmmm TID:nnnnnnnn]
mmmmmmmm : エラーを検出したアプリケーションのプロセスID
nnnnnnnn : エラーを検出したアプリケーションのスレッドID
エラーの内容を説明します。