allowUnqualifiedItemReferences

allowUnqualifiedItemReferences プロパティーは、構造化レコード内、テキストまたは印刷書式内、またはデータ・テーブル内の一意の指定フィールドを参照する場合に、コンテナーおよびサブストラクチャー修飾子を省略できるかどうかを指定します。 有効な値は YES または NO (デフォルト) です。

EGL は規則セットを使用して変数名またはフィールド名が参照するメモリー領域を決定します。式におけるネーム解決 を参照してください。

次の例の customerBalance への参照は正当です。

package com.CompanyB.CustomerPackage;

Record StructCustomerRecord type BasicRecord 
  10 customerNumber CHAR(6);
  10 customerName CHAR(25);
  10 customerBalance MONEY;
end

program BalanceCheck type BasicProgram {
  allowUnqualifiedItemReferences = YES 
  }
  myCustomer StructCustomerRecord;

  function main()
    customerBalance = 0;
  end // main

end // program

allowUnqualifiedItemReferences の値を NO に変更する (または値の設定ブロックを除去して、プロパティーをデフォルト値 NO に戻す) 場合、EGL は customerBalance への参照を解決できません。 ベスト・プラクティスでは、プロパティーのデフォルト値を受け入れ、 myCustomer.customerBalance のフィールドを参照することをお勧めします。 コンテナー名を指定することにより、 コードを読み取る人と EGL に対する潜在的なあいまいさを削減できます。


フィードバック