UNDEFINEDFILE 条件

ファイルを開こうとして失敗したことを示す入出力条件です。

有効/無効の状態

常に有効です。

結果

指定されたファイルはアプリケーション プログラムに対して未定義になります。

発生

ファイルを開こうとして失敗した場合に発生します。

次の場合に、ファイルを開こうとして失敗する可能性があります。
  • 属性が競合している (DIRECT と PRINT など)
  • ブロック サイズがレコード サイズよりも小さい (スパンド レコードを除く)
  • LINESIZE が許容される最大値を超えている
  • INDEXED データ セットの作成で KEYLENGTH がゼロであるか指定されていない
  • INDEXED データ セットに対して KEYLOC オプションが指定されているが、KEYLENGTH + KEYLOC の値がレコード長を超えている
  • STREAM データ セットに対して 18 バイト未満の V 形式の論理レコード長が指定されている
  • FB 形式のレコードに対してレコード サイズの整数倍ではないブロック サイズが指定されている
  • VB 形式のレコードに対して指定のブロック サイズよりも 4 バイト以上小さい長さ以外の論理レコード長が指定されている

複数のファイルを指定する OPEN 文を実行しようとした場合、指定されたすべてのファイルを開こうとした後に UNDEFINEDFILE が発生します。

同じ OPEN 文の複数のファイルに対して UNDEFINEDFILE が発生した場合は、その OPEN 文でのファイル名の出現順序 (通常は左から右) に従って ON-unit が実行されます。

データ送信文での暗黙的なファイル オープンによって発生した場合、ON-unit からの通常の復帰時にデータ送信文の残りの部分について処理が続行されます。ON-unit でファイルが開かれていない場合、文は続行できず、ERROR 条件が発生します。

構文

UNDEFINEDFILE file-reference

パラメーター

file-reference
スカラーのファイル参照。

その他の情報

省略形
UNDF
条件コード
80 から 89、91 から 95
暗黙の処理
メッセージを出力し、ERROR 条件を発生させます。
通常の復帰
最後の ON-unit が正常に完了すると、この条件を発生させた OPEN 文の直後の文に制御が移ります。