問題
Ursa Major Solar社は、標準の取引先責任者とカスタムソーラープロジェクトオブジェクトの間にリレーションを作成したいと考えています。取引先責任者は複数のソーラープロジェクトオブジェクトに関連する可能性があり、 ソーラープロジェクトは複数の取引先責任者を持つことができます。アプリケーション構築者はデータモデルをどのように構成すればよいですか。
- 取引先責任者に1つの主従関係と、ソーラープロジェクトに1つの主従関係を作成する。
- 新しいカスタムオブジェクトに2つの主従関係を作成する。
- 取引先責任者に1つの参照関係と、ソーラープロジェクトに1つの参照関係を作成する。
- 新しいカスタムオブジェクトに2つの参照関係を作成する。
正解
- 取引先責任者に1つの主従関係と、ソーラープロジェクトに1つの主従関係を作成する。
- 新しいカスタムオブジェクトに2つの主従関係を作成する。
- 取引先責任者に1つの参照関係と、ソーラープロジェクトに1つの参照関係を作成する。
- 新しいカスタムオブジェクトに2つの参照関係を作成する。
解説
Ursa Major Solar社の要件をまとめると以下の通りです。
- 取引先責任者は複数のソーラープロジェクトオブジェクトに関連する可能性がある。
- ソーラープロジェクトは複数の取引先責任者を持つことができる。
Salesforceではこのような多対多リレーションを作成する場合、カスタムオブジェクトとして新しく連結オブジェクトを作成し、2つの主オブジェクト(取引先責任者とソーラープロジェクト)と結びつける必要があります。
※2つの参照関係でも同様の構図ができますが、Salesforceが定義する連結オブジェクトは2つの主従関係に限られます。
それぞれの選択肢の理由について説明します。
□ 取引先責任者に1つの主従関係と、ソーラープロジェクトに1つの主従関係を作成する。
これは不正解です。Salesforceでは、2つのオブジェクトを両側から主従関係を結ぶことができないため、このアプローチは誤りです。多対多リレーションの作成には連結オブジェクトという1つの従オブジェクトを作成し、それを介して、2つの主オブジェクトを結び付ける必要があります。
□ 新しいカスタムオブジェクトに2つの主従関係を作成する。
これは正解です。多対多のリレーションシップをモデル化するための一般的なアプローチは、連結オブジェクトを使用することです。新しいカスタムオブジェクト作成し、それに対して取引先責任者とソーラープロジェクトの両方に主従関係を作成することで、多対多のリレーションシップを表現できます。
□ 取引先責任者に1つの参照関係と、ソーラープロジェクトに1つの参照関係を作成する。
これは不正解です。Salesforceでは、2つのオブジェクトを両側から参照関係を結ぶことができないため、このアプローチは誤りです。多対多リレーションの作成には連結オブジェクトという1つの従オブジェクトを作成し、それを介して、2つの主オブジェクトを結び付ける必要があります。参照関係でも同様の関係は作成できますが、Salesforceが定義する連結オブジェクトは2つの主従関係に限られます。
□ 新しいカスタムオブジェクトに2つの参照関係を作成する。
これは不正解です。同様に、Salesforceが定義する連結オブジェクトは2つの主従関係に限られるため誤りです。
コメント