固定構造体

固定構造体 は、テキスト書式、印刷書式、dataTable、または固定レコード・パーツのフォーマットを設定し、一連のフィールドから構成されています。各フィールドは、次の例に示すように、エレメントのメモリー・ロケーションまたはメモリー・ロケーションのコレクションを記述します。

  10 workAddress;
    20 streetAddress1 CHAR(20);
       30 Line1 CHAR(10);
       30 Line2 CHAR(10);
    20 streetAddress2 CHAR(20);
       30 Line1 CHAR(10);
       30 Line2 CHAR(10);
    20 city CHAR(20);

上記の例のように、定義の中ですべてのフィールドを直接定義することができます。 あるいは、その構造体の全体またはサブセットが、別の固定レコード・パーツ内にある構造体と同じものであることを示す方法もあります。詳細については、『Typedef』を参照してください。

フィールドへのアクセスは、まず変数名が基礎となり、その後、ドット構文を持つ一連のフィールド名に基づいて行われます。 レコード myRecord に前の例で示された構造体が含まれていることを宣言すると、次の各 ID は、メモリー領域を参照します。
   myRecord.workAddress
   myRecord.workAddress.streetAddress1
   myRecord.workAddress.streetAddress1.Line1
基本構造体フィールド は、従属構造体フィールドを持たず、以下のいずれかの方法によって、メモリーの 1 つの領域を記述します。
前述のように、固定構造体内のフィールドは、従属フィールドを持つことができます。 次の例を考えてください。
  10 topMost;
    20 next01 HEX(4);
    20 next02 HEX(4);
上位の構造体フィールド (topMost など) を定義する場合には、以下のようなオプションがあります。 固定構造体フィールドのプリミティブ型によって、長さの各単位のバイト数が決まります。詳細については、『プリミティブ型』を参照してください。

基本的な各構造体フィールドには、デフォルトで備えているか、またはその構造体フィールドの中で指定されている一連のプロパティーがあります。 (構造体フィールドは、それ自体がプロパティーを持つ dataItem パーツを参照している場合があります。) 詳細については、『EGL プロパティーとオーバーライドの概要』を参照してください。

関連概念
DataItem パーツ
固定レコード・パーツ
EGL プロパティーの概要
パーツ
EGL での変数の参照
Typedef

関連リファレンス
データの初期化
EGL ソース形式
プリミティブ型
SQL フィールド・プロパティー

フィードバック
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.