プログラムで READ、WRITE、または REWRITE ステートメントを使用してファイルのレコードを処理するためには、その前に、そのファイルを OPEN ステートメントでオープンしておかなければなりません。
OPEN ステートメントが機能するのは、以下の両方の条件が真である場合です。
ファイル編成属性、コード・セット、最大レコード・サイズ、またはレコード・フォーマット (固定または可変) で不一致があると、ファイル状況コードは 39 になり、OPEN ステートメントは失敗します。 HFS のファイルのオープン時には、最大レコード・サイズおよびレコード・フォーマットの不一致はエラーではありません。
固定長 QSAM ファイルの場合、FD 項目に RECORD CONTAINS 0 をコーディングしても、レコード・サイズ属性は矛盾しません。レコード・サイズは DD ステートメントまたはデータ・セット・ラベルから取られ、OPEN ステートメントは正常に終了します。
プログラムの実行中にファイルが再度オープンされないように、CLOSE WITH LOCK をコーディングしてください。
テープ・ファイルを逆順に処理するには、OPEN ステートメントの REVERSED オプションを使用してください。 ファイルは最後に位置付けられ、READ ステートメントでは、データ・レコードが逆順に読み取られます。REVERSED オプションがサポートされるのは、固定長レコードを持つファイルの場合だけです。
関連参照
OPEN ステートメント (Enterprise COBOL 言語解説書)