コンテキストとは、リレーションシップグラフ内のテーブルで、
リレーションシップの評価の基準になるテーブルです。ソーステーブルに計算式を定義する場合、リレーションシップグラフにそのテーブルの複数の別の名前があるときは、計算式を評価する基準になるコンテキストを指定する必要があります。
選択した各コンテキストは、リレーションシップグラフ内の異なるテーブルを表し、データの異なる表示を表します。計算式のコンテキストを選択すると、そのテーブルの名前から計算式が評価されます。選択した各コンテキストは関連テーブルと関連フィールドの異なる関係を表すため、適切な結果を得るには、計算式の評価コンテキストを選択することが重要です。
「色テーブル 1」と「色テーブル 2」は同じソーステーブルを共有するため、「色ソーステーブル」に定義されている計算は、「色テーブル 1」テーブル名または「色テーブル 2」テーブル名のいずれかのコンテキストから評価することができます。
このリレーションシップのしくみを確認するために、コンテキストが「色ソーステーブル」にある2つの計算フィールドにどのように影響するかを考えてみます。各計算フィールドは同じ式を使用して「形ソーステーブル」の価格の合計を決定しており、評価コンテキストだけが異なります。「形ソーステーブル」には、次の値が含まれる3つのレコードがあります。
これらのリレーションシップでは異なる照合フィールドが使用されているため、各リレーションシップは関連レコードの異なるセットを返します。
「スタイル番号」を照合フィールドとして使用する「色テーブル 1」と「形テーブル」の間のリレーションシップでは、次の2つのレコードが返されます。
「色テーブル 1」のコンテキストから評価するように設定された「
Sum ( 形テーブル::価格 )」という式で定義されている「色ソーステーブル」の計算フィールドでは、¥800 という値が返されます。
「量」を照合フィールドとして使用する「色テーブル 2」と「形テーブル」の間のリレーションシップでは、次の2つのレコードが返されます。
「色ソーステーブル」に定義された2番目の計算フィールドは、同じ式「Sum ( 形テーブル::価格 )」を使用しますが、「色テーブル 2」のコンテキストから評価するように設定されています。 この計算フィールドでは、¥1500 という値が返されます。