COBOL プログラムのデータ編成には次のものがあります。
+----------------------------------IBM 拡張----------------------------------+
+------------------------------End of IBM 拡張-------------------------------+
ファイル内にレコードが置かれる物理的順序が、レコードの順序を決定します。 ファイルのレコード間の関係は、ファイルが拡張されない限り、変わりません。 キーはありません。データベース・ファイルおよび装置ファイルの両方が順次編成にできます。
ファイル内の各レコードには、最初のものを除いて、固有の先行レコードがあり、また最後のレコード以外の各レコードには、固有の後続レコードがあります。
このファイルは、おのおのが 1 つのレコードを持つレコード域がいくつか順に並んでいるものと考えることができます。 各レコード域は相対的なレコード番号で識別されますが、アクセス方式の場合、その相対レコード番号に基づいてレコードを保管したり取り出したりします。 たとえば、最初のレコード域は相対レコード番号 1 でアドレスされ、10 番目のレコード域は相対レコード番号 10 でアドレスされます。 相対ファイルは DISK または DATABASE に割り当てなければなりません。
表 8には、相対出力ファイルに影響する条件が要約されています。
ファイル・アクセスおよび CL 指定 | オープン時の条件 | クローズ時の条件 | ファイル境界 |
---|---|---|---|
順次 *INZDLT | 書き出されないレコードが初期設定される | 全増分 | |
順次 *INZDLT *NOMAX サイズ | CLOSE は正常に完了ファイル状況は 0Q | 書き込まれたレコードの境界まで | |
順次 *NOINZDLT | 書き込まれたレコードの境界まで | ||
ランダムまたは動的 | レコードは初期設定されるファイルはオープンされている | 全増分 | |
ランダムまたは動的 *NOMAX サイズ | OPEN は失敗ファイル状況は 9Q | ファイルは空 |
9Q のファイル状況から回復するためには、関連する実行時メッセージ・テキストに記述されているとおりに、CHGPF (物理ファイル変更) コマンドを使用してください。
相対レコード番号処理は、物理ファイルまたは、ただ 1 つの物理ファイルに基づいている論理ファイルに使用できます。
ファイルの作成後に、ファイル・サイズを拡張できます。 ファイルのファイル状況として 0Q を受け取ったら、その処理を行う前にさらにレコードをそのファイルに追加することが必要な場合があります。 INZPFM (物理ファイル・メンバー初期設定) コマンドを使えば、削除済みレコードをそのファイルに追加できます。
たとえば、10 000 のレコードのファイルを作成してから、毎回 1 000 のレコードを 3 回増分するとします。
ファイル中の各レコードには、索引に関連付けられた埋め込みキー (キー・データ項目と呼ばれます) があります。 各索引はそれに関連する埋め込みレコード・キー・データ項目の内容に従って、データ・レコードへの論理パスを提供します。 データベース・ファイルと DISK ファイルのみを索引編成にできます。
レコードの挿入、更新、または削除が行われるとき、それらのレコードはその基本キーの値によってのみ識別されます。 基本キー・データ項目名は、FILE-CONTROL 段落の RECORD KEY 文節に指定します。
+----------------------------------IBM 拡張----------------------------------+
OUTPUT 用にオープンされている論理ファイルは、そのベースとなっている物理ファイル内のすべてのレコードを取り除くわけではありません。 そうではなく、ファイルは書き込み操作のみ許されるようにオープンされ、レコードをファイルに追加することができます。
+------------------------------End of IBM 拡張-------------------------------+
+----------------------------------IBM 拡張----------------------------------+
ワークステーションおよびデータ通信ファイルは、TRANSACTION 編成にできます。 「WebSphere Development Studio: ILE COBOL プログラマーの手引き」のトランザクション・ファイルの章を参照してください。
+------------------------------End of IBM 拡張-------------------------------+