このルーチンは、USING で指定されたデータ項目の長さに応じて、4 文字または 11 文字の拡張状態コードを返します。この状態は、前回試行された入出力操作に関する状態です。返される値は ANSI COBOL 1985 に準拠しています。
CALL "C$RERR" USING extended-status
extended-status の長さが 4 文字の場合、最初の 2 文字の位置には、入出力操作の完了時のファイル状態データ項目と同じ数字が含まれます。最後の 2 文字の位置は、ファイル状態に関する追加情報を示します。状態について 2 桁しか示されていない場合は、最後の 2 文字の位置に ASCII の数字 0 が入ります。ほとんどの状態では 0 から 9 までの 10 進数しか示されませんが、一部の文字位置では A から F までの 16 進数が示される場合があります。状態コードの詳細なリストについては、『RM/COBOL User's Guide』の「Appendix A: Runtime Messages」を参照してください。
extended-status の長さが 11 文字の場合、最初の 2 文字の位置 (位置 1 および 2) には、入出力操作の完了時のファイル状態データ項目と同じ数字が含まれます。付録 A で状態について 2 桁しか示されていない場合は、残りの 9 文字の位置に ASCII の空白が入ります。付録 A で状態について 4 桁が示されている場合は、文字位置 3 に ASCII のカンマが入り、文字位置 4 および 5 に状態の最後の 2 桁が入り、残りの 6 文字の位置に ASCII の空白が入ります。永続的エラーの場合、つまり最初の 2 桁が 30 の場合は、文字位置 3 に ASCII のカンマが入り、文字位置 4 および 5 に 2 桁の OS コードが入ります (以下の表を参照)。続いて文字位置 6 に ASCII のカンマが入り、文字位置 7 から 11 に 5 桁の OS 固有のエラー コードが入ります。『RM/COBOL User's Guide』の「Input/Output Errors」のセクションを参照してください。
コード | 説明 |
---|---|
00 | 不明な OS エラー |
01 | ファイル マネージャーによって検出されたエラー |
04 | UNIX エラー |
06 | Btrieve エラー |
10 | Open File Manager エラー |
11 | C ライブラリ エラー |
12 | MS-Windows エラー |
15 | RM/InfoExpress サーバー エラー |
16 | RM/InfoExpress クライアント エラー |
21 | RM/InfoExpress WinSock エラー |