【Salesforce】N対Nの参照関係を構築する
Salesforceでn対nのオブジェクトを作成したいということはあるかと思います。
データベースの入門なんかでは「学生」と「講義」というテーブルでよく出てきますね。
そのような場合は両方に参照を持つテーブルを新しく作るのですが、Salesforceでも同じ方法で実現することが出来ます。
https://help.salesforce.com/articleView?id=relationships_manytomany.htm&type=5
中間オブジェクトという名前で覚えたような記憶がありますが、連結オブジェクトという名前で表記されていますね。
簡単に説明すると、オブジェクトAとオブジェクトBをn対nの関係にする場合に両方のオブジェクトに主従項目を持つオブジェクトCを作成することで実現できます。
この時、オブジェクトCのタブは必要ないと書いてあります。
親レコードであるオブジェクトAとオブジェクトBの関連リストにオブジェクトCを配置することによって、データが見やすくなるというわけですね。
作ってみると分かりますが、標準で使う場合にも使いやすくなっています。
ちょっとした例です。
オブジェクトAにあたる「学生」オブジェクトを作成します。
オブジェクトBにあたる「講義」オブジェクトを作成します。
オブジェクトCにあたる「講義参加者」オブジェクトを作成します。
「学生」と「講義」に主従の項目を持っています。
ページレイアウトの関連リストを編集し、レコードを作成しました。
詳細画面はこのようになっています。
「学生」レコードの詳細画面です。
「講義」レコードの詳細画面です。
関連リストに表示されているレコードは「講義参加者」なのですが、関連リストの表示名を対になるオブジェクト名とすることで直接つながっているように見えるというわけですね。
大変便利なものだと思うのですが、コミュニティユーザ等でオブジェクト数に制限がある場合は少し使いづらかったりします。
オブジェクト数の制限に余裕があれば使っていきたいですね。
No comments.