データ構造

ILE RPG コンパイラーによって、記憶域の区域およびその区域内 のサブフィールドと呼ばれるフィールドのレイアウトを定義する ことができます。記憶域のこの区域は、データ構造と呼ばれます。 データ構造は、定義仕様書の 24 から 25 桁目に DS を指定することによって定義します。

データ構造は次の目的で使用することができます。

さらに、次の 4 つの特殊なデータ構造があり、それぞれが 特定の目的を持っています。

データ構造は、プログラム記述または外部記述とすることができます。 ただし、標識データ構造は プログラム記述のみです。 あるデータ構造を、LIKEDS キーワードを使用して別のデータ構造と同じように定義することができます。

プログラム記述データ構造は、定義仕様書の 22 桁目のブランクによって識別され ます。 プログラム記述データ構造のサブフィールド定義は、データ構造定義の直後に続 いていなければなりません。

定義仕様書の 22 桁目の E によって識別される外部記述データ構造は、外部記述 ファイルに入れられるサブフィールド記述を持っています。 コンパイル時に、ILE RPG コンパイラーは、外部名を使用してデータ構造サブ フィールドの外部記述を見付けて、それを抜き出します。外部ファイルの名前は、7 から 21 桁目に指定するか、あるいは キーワード EXTNAME のパラメーターとして指定します。

注:
外部記述にサブフィールドについて指定されたデータ形式は、コンパイラーによ ってそのサブフィールドの内部形式として使用されます。 これは、外部記述ファイルの取り扱われ方と異なっています。

外部サブフィールドの名前は、キーワード EXTFLD を使用してプログラム中で変 更することができます。 キーワード PREFIX を使用して、EXTFLD によって名前が変更されていない外部サ ブフィールド名に接頭部を追加することができます。 ファイル名が、外部ファイル名を使用したデータ構造の定義時に EXTNAME キーワ ードに指定されたパラメーターと同じであっても、データ構造サブフィールドは 、ファイル仕様書に指定された PREFIX キーワードの影響を受けないことに注 意してください。 追加のサブフィールドは、外部サブフィールドのリストの直後にプログラム記述 サブフィールドを指定することによって、外部記述データ構造に追加することが できます。