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 に対する潜在的なあいまいさを削減できます。