システムの処理
重大度コードがWの場合、変換に成功した文字までを設定し、処理を続行します。
重大度コードがUの場合、プログラムを異常終了させます。
プログラマーの処置
COBOLプログラム中で、データ項目のエンコード方式で文字として保証されている範囲外のデータが使用されました。$1に設定されたエラーコードを参考にエラーの原因を取り除いて、再度実行してください。
$2にはエラーアドレスが設定されます。
エラーコード | エラーの意味 | プログラマーの処置 |
---|---|---|
E2BIG 7(0x7) | 変換先コード列格納域が不足しました。 | 変換先のデータ項目の長さが十分であるか確認してください。 |
ENOMEM 12(0xc) | 領域不足が発生しました。 | “付録D 注意事項”の“COBOLプログラムの実行時に仮想メモリ不足が発生する場合”を参照して対処してください。 |
EINVAL 22(0x16) | 変換元コード列の終りに、不完全なコードが現れました。 | 変換元のデータ項目に格納された文字データが転記、部分参照などで不完全な状態になっていないか確認してください。 |
EILSEQ 42(0x2a) | 変換元コード列中に、変換元コード系に存在しないコードが現れました。 | 変換元のデータ項目に格納されたデータがエンコード方式の範囲外です。エンコード方式の異なるデータ項目を重ね合わせ(REDEFINES句)で使用していないか、文字コード以外のバイナリデータを格納していないか確認してください。 |
環境変数@CBR_CONVERT_CHARACTER=FJ_ICONV を指定して実行した場合は、“Interstage Charset Manager 使用手引書 標準コード変換機能編”を参照してエラーの原因を確認してください。
上記以外のエラーコードについては、システムのエラーコードを参照してください。
参照
“Visual C++のオンラインヘルプ”