プログラムとファイルとの代表的な関係の例
図 1. IBM® iでの RPG プログラムとファイル間の代表的な関係

- 1
- プログラムは、オペレーティング・システムに定義されているファイルの フィールド・レベル記述を使用します。 外部記述ファイルは、ファイル仕様書の 22 桁目の E によって識別されます。 コンパイル時に、外部フィールド・レベル記述がコンパイラーによって コピーされます。
- 2
- 外部記述ファイル (すなわち、フィールド・レベル外部記述のある ファイル) は、プログラム内でプログラム記述ファイルとして使用されます。 プログラム記述ファイルは、ファイル仕様書の 22 桁目の F によって識別されま す。 この項目によって、外部フィールド・レベル記述にコピーしないように コンパイラーに通知します。 このファイルはコンパイル時に存在する必要はありません。
- 3
- ファイルは、オペレーティング・システムに対して、レコード・レベルでのみ記述されます。 レコードのフィールドはプログラムの中で記述されます。したがって、ファイル仕様書 の 22 桁目は F を含まなければなりません。このファイルはコンパイル時に存在する必要は ありません。
- 4
- ファイル名はコンパイル時に指定 (すなわち、RPG ソース・メンバー内でコーディング) することができ、別のファイル名を実行時に指定することができま す。 ファイル仕様書の 22 桁目の E は、ファイルの外部記述がコンパイル時にコピー されることを指示します。 実行時には、プログラムによって別のファイルをアクセスするように、 ファイル一時変更コマンドを使用することができます。 実行時にファイルを一時変更するためには、両方のファイルのレコード名が 間違いなく同じでなければなりません。 RPG プログラムは READ 命令などの入出力命令でレコード様式名を使用します が、その命令ではこのレコード様式名が必要なレコード・タイプを指定します。 詳しくは、ファイル入出力の一時変更および指定変更を参照してください。