システムの処理
重大度コードがIの場合、プログラムの処理を続行し、重大度コードがUの場合、プログラムを異常終了させます。 なお、重大度コードは、ファイルの定義にFILE STATUS句が指定されている場合Iとなり、FILE STATUS句および誤り処理手続きの指定がない場合Uとなります。
プログラマの処置
$3に設定された文字列を参考にエラーの原因を取り除き、再度実行してください。 なお、$1にはOPENまたはCLOSEのどちらかの文字列が、$2にはアクセス名またはファイル名が設定されます。 $3に設定される文字列の意味と処置を "表3.12 JMP0310I-I/Uの$3の内容(1)" および "表3.13 JMP0310I-I/Uの$3の内容(2)" に示します。 $4にはエラーアドレスが設定されます。
$3 | エラーの内容 | プログラマの処置 |
---|---|---|
ACC-METHOD | ファイルのアクセス方法が誤っています。(*1)(*4) | アクセス方法を正しく指定してください。 |
BLKED-FILE | CLOSE 文実行時のエラーなどにより使用できないファイルです。 | CLOSE 文の誤りを調査し、対処してください。 |
CNVER=xxxx | 文字列のコード変換に失敗しました。 xxxx: 16進表記 | 第5章 システムエラーコードの一覧から原因を調査し、対処してください。 エラーコードが0xFFFFFFFFの場合はシフトJIS範囲外の文字の使用が保証されていない箇所でシフトJIS範囲外の文字が使用されました。 プログラムを修正してください。 |
ERFLD=xxxx | システムからのエラーコードを示します。 xxxx: 16進表記 | 第5章 システムエラーコードの一覧から原因を調査し、対処してください。(*2) |
ERRCD=xxxx | 表示ファイルのアクセスエラーが発生しました。 | 各接続製品のマニュアルから原因を調査し、対処してください。(*3) |
EXCL-ERROR | 排他エラーが発生しました。 | 再実行してください。 排他エラーが頻発するようなら、運用上の問題がないかを調査してください。 |
EXFH-INF | 外部ファイルハンドラ情報ファイルのオープンに失敗しました。 または、外部ファイルハンドラ情報ファイルの内容に誤りがあります。 | 外部ファイルハンドラ情報ファイルが正しく設定されているか確認してください。また、外部ファイルハンドラ情報ファイルの内容に誤りがないか確認してください。 |
FCB | FCB の内容に誤りがあります。 | FCB の内容を確認してください。 |
FILE-LOCK | 他ユーザによりファイルが排他使用されています。 または他ユーザが使用しているため排他使用できません。 | 再実行してください。 排他エラーが頻発するようなら、運用上の問題がないかを調査してください。 |
FONT-TABLE | フォントテーブル名の指定に誤りがあります。 | フォントテーブル名を正しく指定してください。 |
TNCD=xxxx | システムからのエラーコードを示します。xxxx: 16進表記 | 第5章 システムエラーコードの一覧から原因を調査し、対処してください。(*2) |
LOAD | 副プログラムのローディングに失敗しました。 | プログラムの実行環境を調査してください。 |
LOAD=xxxxxx | 他製品のローディングに失敗しました。 xxxxxx: 16進表記 | 設定されたエラーコードを参考にエラーの原因を取り除いてください。(*6) |
LOAD-EXFH | 外部ファイルハンドラの環境開設に失敗しました。 | 以下の原因が考えられます。エラーの原因を取り除いてプログラムを再実行してください。
|
LOCK-FULL | 同一のファイルに対し、多数のアプリケーションからOPEN要求がありました。 その結果、ロックテーブルに不足が発生しました。 | 再実行してください。 エラーが頻発するようなら、運用上の問題がないかを調査してください。 |
NON-FILE | OUTPUT指定以外のOPEN文を実行しましたが、ファイルは存在しません。 | プログラム実行前にファイルを生成しておいてください。 |
NON-REEL | REEL/UNIT 指定のCLOSE 文を実行しました。 | プログラムを修正してください。 |
NOT-UNIQUE | DUPLICATES指定の記述がないのにもかかわらず、割り当てられたファイルが重複キーを持つファイルです。 | RECORD KEY句、 ALTERNATIVE KEY句のDUPLICATES指定を確認し、プログラムの指定と割り当てられたファイルの属性の矛盾を修正してください。 |
OPEN-MODE | ファイルのOPENモードに誤りがあります。 | 正しいOPENモードでファイルをオープンしてください。 |
READ-ONLY | 読込み専用ファイルです。 またはファイル名の指定に誤りがあります。 | 書込み可能となるようにファイルのアクセス権を変更してください。 または正しいファイルを指定してください。 |
REC-MODE | レコード形式に誤りがあります。 | レコード形式を正しく指定してください。 |
RMERR=xxxx | ランタイムシステムからのエラーコードを示します。 xxxx: 16進表記 | システムの障害と考えられるため資料を採取して技術員(SE)に連絡してください。(*4) |
THREAD=xxxxxx | スレッドの同期処理に失敗しました。 XXXXXX: 16進表記 | 設定されたエラーコードを参考にエラーの原因を取り除いてください。(*6) |
UNSUPPORT | 指定された機能は未サポートです。 |
|
ファイルのアクセス方法が誤っているとは、以下の事象を指します。
異なるファイル編成でアクセスしようとしている場合
復旧の必要があるファイルをアクセスしようとしている場合
ファイルの表現形式(シフトJIS、UCS-2、UTF-8)がプログラムの動作コード系やプログラム中の定義と一致していない場合
印刷ファイル(FORMAT句なし)の実行で、メッセージ本文中のエラーを示す文字列に "ERFLD=101" が出力された場合は、以下の事項を確認してください。
不要なプリンタドライバを多数インストールしていないか。
FCB制御文が2048バイト未満であるか。
不当なフォームオーバレイパターンを指定していないか。
誤ったフォームオーバレイパターン名を登録していないか。
スプール領域が不足していないか(環境変数TMPに指定したフォルダのディスク容量を確認してください)。
実装メモリ、仮想メモリが不足していないか(同時に実行している他のアプリケーションを停止して確認する/実装メモリを増設する/仮想メモリを大きくする)。
上記以外の場合、システムの障害と考えられるため、資料を採取して技術員(SE)に連絡してください。
RDMファイルに対してのエラーコードの詳細については、 "PowerRW+ COBOL開発マニュアル" の "エラーコード一覧" を参照してください。
Btrieveファイルに対してのエラーコードの詳細については、Pervasive PSQL製品のドキュメント"Status Code and Message"を参照してください。
PowerRDBconnector使用時のエラーコードの詳細については、 "PowerRDBconnector説明書" の "ファイルアクセス時のエラー情報" を参照してください。
上記以外のファイルのメッセージ本文中のエラーを示す文字列の詳細については "第5章 システムエラーコードの一覧"を参照してください。
MeFtを使用しているときにERRCD=90xxまたはERRCD=99xxが出力された場合、xxはMeFtの通知コードを示します。 通知コードについては、"MeFtユーザーズガイド"を参照してください。
RMERR=177F(98xx)またはACC-METHOD (98XX)が出力された場合、ファイルが正常に使用できない状態になっています。 索引ファイルの場合には、ファイルユーティリティまたは索引ファイル復旧関数を使用して、ファイルを復旧してください。
詳細については、 "第5章 システムエラーコードの一覧" および "Visual C++のオンラインヘルプ" を参照してください。
行順ファイル、レコード順ファイル、相対ファイルおよび索引ファイルを使用している場合、ファイルの割当て先に通信ポート(COMn:)など、COBOLで未サポートの媒体を指定している場合が考えられます。 また、印刷ファイルを使用している場合、ファイル編成を印刷ファイルとみなす条件を満足していないため、レコード順ファイルとみなされている可能性があります。 この場合、レコード順ファイルに対してローカルプリンタポート(LPTn:)や通信ポート(COMn:)が指定されることになるため、本エラーとなります。 COBOLで使用可能な媒体については、 "ファイルの種類" の "表: ファイルの種類と特徴" を参照してください。 また、印刷ファイルとみなす条件については、 "印刷ファイル/表示ファイルの決定方法" を参照してください。 "表3.13 JMP0310I-I/Uの$3の内容(2)" で説明する文字列が表示された場合は、プログラム中のファイルまたはレコードの定義内容と、実際に処理するファイルの属性の矛盾を取り除いてください。
“表3.13 JMP0310I-I/Uの$3の内容(2)”で説明する文字列が表示された場合は、以下の事項を確認してください。
プログラム中のファイルまたはレコードの定義内容と、実際に処理するファイルの属性に矛盾はないか。
実際に処理するファイルは、当製品で作成したファイルか。
指定したファイルシステム種別は正しいか。
当製品以外(OSIV COBOL85や他言語)で作成したファイルや、異なるファイルシステム種別のファイルを使用した場合、下記のエラーが発生することがあります。
$3 | エラーの内容 | プログラムで確認する内容 |
---|---|---|
INV-BLKSZ | ブロック長に誤りがあります。 | BLOCK CONTAINS句に指定した長さ |
INV-CODEST | コードセットに誤りがあります。 | CODE SET句の文字符号 |
INV-COLSEQ | 文字の大小順序(コレーティングシーケンス)に誤りがあります。 | PROGRAM COLLATING SEQUENCE句の符号系名 |
INV-DELMTR | レコードの区切り文字に誤りがあります。 | ORGANIZATION句、RECORD句の指定内容(注1) |
INV-KEYDUP | キーの重複可否(DUPLICATES)に誤りがあります。 | RECORD KEY句、ALTERNATE RECORD KEY句のDUPLICATES指定の有無 |
INV-KEYLEN | 割り当てられたファイルのキー長がプログラムでの定義と矛盾します。 | RECORD KEY句、ALTERNATE RECORD KEY句に指定したデータ名の長さ(注2) |
INV-KEYSTR | キーの構造に誤りがあります。 | RECORD KEY句、ALTERNATE RECORD KEY句に指定したデータ名の長さ、データ名の個数またはデータ名のレコード内での相対位置 |
INV-LRECL | 割り当てられたファイルのレコード長がプログラムでの定義と矛盾します。 | ORGANIZATION句の指定内容 RECORD CONTAINS 句に指定したレコード長 |
INV-RKP | 割り当てられたファイルの相対キー位置がプログラムでの定義と矛盾します。 | RECORD KEY句、ALTERNATE RECORD KEY句に指定したデータ名のレコード内での相対位置 |
INV-KEYRCS | 割り当てられたファイルのキーのコード系がプログラムの動作コード系と矛盾します。 | 翻訳オプションRCSの指定内容 |
KEY-ATTR | 割り当てられたファイルのキー属性がプログラムでの定義と矛盾します。 | RECORD KEY句、ALTERNATE RECORD KEY句に指定したデータ名の属性 |
NON-ESDS | 順ファイルに対して順ファイル以外が割り当てられました。 | ORGANIZATION句の指定内容 |
NON-KSDS | 索引ファイルに対して索引ファイル以外が割り当てられました。 | |
NON-RRDS | 相対ファイルに対して相対ファイル以外が割り当てられました。 | |
NON-TEXT | 印刷ファイルに対してテキストファイル以外が割り当てられました。 |
注1:ファイル編成・レコード形式(固定長/可変長)が、実際のファイルと一致していることを確認してください。
注2:RECORD KEY句、ALTERNATE RECORD KEY句に2つ以上のデータ項目を指定した場合、すべてのデータ項目の長さが、割り当てられたファイルのキーごとの長さと一致していなければなりません。