データ・パーツの概要

データ・パーツは、1 つ以上のデータを格納する構造を定義します。 データ・パーツは、論理パーツで使用できる変数の基本を形成します。

EGL は、以下のタイプのデータ・パーツを提供します。
ArrayDictionary
ArrayDictionary パーツに基づいた変数を使用すると、各配列から同じ番号が付いた要素を取り出すことによって、一連の配列にアクセスできます。この方法で取り出された要素セットは、それ自体が 1 つの辞書であり、それぞれの配列名は、配列要素内の値と対になったキーとして扱われます。
DataItem
DataItem パーツは、プリミティブ・データ型に名前を割り振り、割り当てられる値を制限してプリミティブ・データ型を特殊化します。DataItem パーツを定義するときには、ストレージを予約しません。DataItem パーツに基づいた変数を宣言するときにのみ、ストレージを予約します。
DataTable
DataTable パーツは、データの集合を表形式で提供します。この表は、アプリケーション全体で提供できます。DataTable は、メインのパーツです。
Dictionary
辞書は、値の代入が可能な複数のフィールドを含んでいます。データベースには関連付けられておらず、プログラムの実行中に新規フィールド (名前と値のペアと呼ばれる) を追加できます。辞書型の変数を作成して、ストレージを予約します。辞書が使用するストレージの量は、その辞書に含める情報に応じて変化します。
Form
書式パーツには、一連のフィールドのレイアウトと特性がどのようにユーザーに表示されるかについての情報が含まれています。書式パーツは、プリンター (印刷書式)、3270 画面、またはコンソール・ウィンドウ (テキスト書式) のいずれかに情報を表示できます。書式パーツは、FormGroup パーツ外では生成できません。
FormGroup
FormGroup パーツは、FormGroup ソース・ファイル内でテキスト書式と印刷書式を定義し、use 宣言を使用して書式パーツを組み込み、フローティング・エリアを定義することができます。FormGroup パーツは、メインのパーツです。
プリミティブ
EGL では、他のほとんどのプログラミング言語で見られるような、 数値、日付、文字、ラージ・オブジェクトといったシンプルなデータ型を提供しています。 プリミティブは、より複雑なデータ型の基盤を構成します。 プリミティブから作成された 2 つの変数の例を、以下に示します。
myInteger INT;
myString CHAR(50);

プリミティブの完全なリストは、プリミティブ・データ型に記載されています。 使用頻度の高いプリミティブについては、 通常使用するプリミティブを参照してください。

レコード
レコード・パーツは、他のデータ・パーツ (プリミティブ、DataItems、または他のレコードなど) を構造化した集合体です。レコード・パーツ内に含まれているこうしたデータ・パーツは、 レコード・パーツのフィールド と呼ばれます。 通常、1 つのレコード・パーツがデータベース内の 1 つのテーブルを表わし、 1 つのフィールドがテーブル内の各列を表わします。
Record myCustomerRecord type BasicRecord
    customerNumber     INT;
    customerFirstName  STRING;
    customerLastName   STRING;
    customerBalance    FLOAT;
end
このレコードには、4 つのフィールドがあります。 整数が 1 つ、文字列が 2 つ、浮動小数点数が 1 つというフィールド構成です。 これらのフィールドは、容易に dataItems や他のレコードにすることができます。
厳密には、データ・パーツ自体がデータを格納するのではなく、 そのデータ・パーツから作成された変数がデータを格納します。 したがって、データ・パーツは、 変数のパターンの 1 つであると考えることができます。 以下のように、変数に名前をつけて、 使用するデータ・パーツを指定するだけで、変数を宣言できます。
myVariable1 INT;
myVariable2 myDataItemPart;
myVariable3 myRecordPart;

フィードバック