set

EGL set 文は、コンテキストによって、次の 2 つの目的で機能します。 どちらの場合でも、文はターゲット内の指定された何らかの値を変更します。 このトピックでは、set 文のすべての書式に共通するコア情報を提供します。 特定のコンテキストにおける動作に関しては、このトピックの終わりにある『関連参照』を参照してください。

コア構文

set 文のコア構文
target
レコード変数、書式、または書式フィールド。これらの変数について詳しくは、以下を参照してください。
value
set 文がターゲットに割り当てる値。 これらの値は、文の特定のターゲットに応じて異なります。 詳しくは、以下を参照してください。

ターゲットとしてのレコード変数を持つ set

データ・アクセスを実行する場合、set 文のターゲットはレコード変数です。 次の値の一部またはすべてが使用できます。
empty
set 文のこのバリアントは、レコード内に含まれるすべてのレコード変数で再帰的に機能し、構造化レコードの場合には、構造の最下位レベルまで機能します。個々のフィールドがそのデータ型に従いデフォルト値に設定され、NULL フラグがオンになります。デフォルト値について詳しくは、データの初期化を参照してください。 NULL フラグについて詳しくは、isSQLNullableを参照してください。
initial
レコード変数は、各フィールドの初期値を指定できます。 initial 修飾子はこれらのフィールドの値を、レコード定義で指定された値に再設定します。 レコード定義に初期値が指定されていない場合の initial 修飾子の効果は empty 修飾子の効果と同じです。
position
特定のステレオタイプを持つレコード変数 (索引付きレコードなど) の場合、 set 文を使用して、ファイル内の get next 文または get previous 文の前に、ファイル・ポインターを設定できます。 set 文は、指定されたレコード変数内のキー・フィールドに一致するように、 効果的にファイル・ポインターを配置します。 詳しくは、このトピックの終わりにある『関連参照』セクションで、該当するデータ・アクセス・テクノロジーの set 文に関する考慮事項を参照してください。

複数のレコードおよび複数の値を、コンマで区切って指定することができます。 レコードの場合、各オプションは set 文内で指定された順序で効力を生じます。

ターゲットとしてのフィールドを持つ set

set 文のターゲットがフィールドである場合、 次の値が (書式上またはレコード内の) すべてのフィールドで使用可能です。
empty
set 文のこのバリアントは、指定されたフィールドをクリアします。フィールドが構造化されている場合、この文はすべての従属フィールドもクリアします。 代入される値については、データの初期化を参照してください。
initial
set 文のこのバリアントは、フィールドの値を、レコード定義に指定された値にリセットします。レコード定義に初期値が指定されていない場合の initial 修飾子の効果は empty 修飾子の効果と同じです。
NULL 可能なフィールドまたは NULL 可能な変数を明示的に設定するには、set 文を使用しないでください。 次の例のような代入文を使用してください。
myNullableVar = null;

互換性

表 1. set の互換性に関する考慮事項
プラットフォーム 問題
Rich UI set はサポートされていません。

フィードバック