1. OPEN

OPENステートメントは、ファイルの操作を開始します。

  • 形式1

    figure pd open format1 sequential files
    Figure 1. OPENステートメントの形式1
  • 形式2

    figure pd open format2 indexed and relative files
    Figure 2. OPENステートメントの形式2
  • 形式3

    figure pd open format3 line sequential files
    Figure 3. OPENステートメントの形式3

以下は、ステートメントの各設定項目についての説明です。

  • INPUT

    • 入力ファイルとしてオープンします。

  • OUTPUT

    • 出力ファイルとしてオープンします。

    • 新規作成されるファイルを使用することができます。レコードが含まれているファイルを使用すると、ファイルをオープンする際に既存のレコードは削除されます。

  • I-O

    • 入出力ファイルとしてオープンします。

  • EXTEND

    • ファイルを既存のレコードに追加するか、または新規作成する際に使用される出力ファイルをオープンします。

    • ファイルが存在する場合は、既存のレコードの次に追加し、存在しない場合は新規作成します。

  • file-name-1、file-name-2、file-name-3、file-name-4

    • オープンされるファイル名を記述します。

    • FD項目に記述されている必要があります。

  • REVERSED、NO REWIND

    • テープ・ファイルにのみ適用されます。

一般規則

OPEN INPUTステートメントまたはOPEN I-Oステートメントは、ファイル位置指示子を最初のレコード位置に設定します。

EXTEND句が記述されている場合は、ファイルの最後のレコードの後に位置付けます。以降に実行されるWRITEステートメントは、OUTPUTとしてオープンされているかのようにレコードを追加します。EXTEND句は、新規作成されるファイルにも記述できます。

VSAMファイルの場合、ファイルにレコードが存在しないと、形式1のREADステートメントの実行結果がAT END条件が発生するようにファイル位置指示子が設定されます。

以下の表は、OPENモードと使用可能な入出力ステートメントとの関係を示しています。

  • 順次ファイルで使用可能なステートメント

    ステートメント 入力オープン・モード 出力オープン・モード I-Oオープン・モード 拡張オープン・モード

    READ

    X

    X

    WRITE

    X

    X

    REWRITE

    X

  • 指標ファイルと相対ファイルで使用可能なステートメント

    ファイル・アクセス・モード ステートメント 入力オープン・モード 出力オープン・モード I-Oオープン・モード 拡張オープン・モード

    Sequential

    READ

    X

    X

    WRITE

    X

    X

    REWRITE

    X

    START

    X

    DELETE

    X

    Random

    READ

    X

    X

    WRITE

    X

    X

    REWRITE

    X

    START

    DELETE

    X

    Dynamic

    READ

    X

    X

    WRITE

    X

    X

    X

    REWRITE

    X

    START

    X

    X

    DELETE

    X

  • 行順次ファイルで使用可能なステートメント

    ステートメント 入力オープン・モード 出力オープン・モード I-Oオープン・モード 拡張オープン・モード

    READ

    X

    WRITE

    X

    X

    REWRITE

X印が使用可能なステートメントです。