Administrator 練習問題 Q146
主従関係の 3 つの特徴は何ですか?
左の□で回答を選択。本文を押すと横線で除外でき、もう一度押すと戻せます。
3つ選択してください(0/3)
正答:B. 親オブジェクトは標準オブジェクトまたはカスタム オブジェクトにすることができます。 / C. ロールアップ サマリーは、主従関係でサポートされます。 / D. 子レコードの所有者フィールドは、親レコードの所有者です。
解説
前提知識
主従関係とは
主従関係は、2つのオブジェクトを強い親子関係で結ぶリレーションです。親側を親オブジェクト、子側を子オブジェクトと呼びます。 子レコードは親レコードに従属します。代表的な特徴は次のとおりです。
- 子レコードの共有とアクセス権は親に従う。
- 子レコードには独立した所有者項目がなく、所有者は親の所有者として扱われる。
- 親を削除すると、関連する子レコードも削除される。
- 親側にロールアップサマリー項目を作成できる。
📘 ここがまだモヤッとする方へ:主従関係とは何か:親が消えたら子も消える関係
参照関係との違い
| 比較項目 | 主従関係 | 参照関係 |
|---|---|---|
| 子側の所有者 | 独立した所有者を持たず、親に従う | 独立した所有者を持てる |
| 共有とアクセス権 | 親から継承する | 独立して設定できる |
| 親削除時 | 子も削除される | 設定に応じて参照を解除するなどの動作 |
| ロールアップサマリー | 親側で作成できる | 標準のロールアップサマリーは作成できない |
ロールアップサマリーとは
ロールアップサマリー項目は、関連する子レコードを親側で集計する項目です。件数、合計、最小値、最大値を求められます。 たとえば、請求書を親、請求明細を子にすると、請求明細の金額を請求書へ合計できます。
設問の状況を分解する
この問題は、主従関係の仕様から正しいものを3つ選ぶ問題です。
- 子は親に従属するため、権限を独立して設定するというAは誤り。
- 親オブジェクトには標準オブジェクトまたはカスタムオブジェクトを使用できるためBは正しい。
- 親側で子を集計できるためCは正しい。
- 子側の所有者は親の所有者に従うためDは正しい。
- カスタムオブジェクトに作成できる主従関係は最大2つであり、5つではないためEは誤り。
選択肢の検討
A. 子レコードの権限は、親とは独立して設定されます。 → ✕
子レコードの共有とアクセス権は、親レコードから継承されます。子側だけに独立した組織の共有設定や所有者ベースの共有を設計することはできません。 これが正解になる場面は、子側にも独立した所有者と共有設定を持たせる参照関係について問われた場合です。
B. 親オブジェクトは標準オブジェクトまたはカスタム オブジェクトにすることができます。 → ⭕ 正解
親オブジェクトには、標準オブジェクトまたはカスタムオブジェクトを指定できます。一方、子オブジェクトとして主従関係項目を持つのはカスタムオブジェクトです。
C. ロールアップ サマリーは、主従関係でサポートされます。 → ⭕ 正解
ロールアップサマリー項目は、親オブジェクトで関連する子レコードを集計します。子レコードが主従関係を通じて親に関連付けられていることが前提です。
D. 子レコードの所有者フィールドは、親レコードの所有者です。 → ⭕ 正解
厳密には、子レコードには独立して編集できる所有者項目がありません。子レコードの所有者は自動的に親レコードの所有者として扱われます。選択肢はこの仕様を表しているため正解です。
E. 各オブジェクトには最大 5 つの主従関係を設定できます。 → ✕
カスタムオブジェクトに作成できる主従関係は最大2つです。2つの主従関係を持つカスタムオブジェクトを使って、多対多関係を表す連結オブジェクトを作れます。 「最大5つ」という記述は誤りです。
管理者としての対処手順
主従関係を作成する前に、次の順で設計を確認します。
- 親を削除したとき、子も削除してよいか確認する。
- 子に独立した所有者や共有設定が必要か確認する。必要なら参照関係を選ぶ。
- 子の値を親側でロールアップ集計する必要があるか確認する。
- 子にするカスタムオブジェクトで、既存の主従関係数を確認する。
- [設定]→[オブジェクトマネージャ]→子側のカスタムオブジェクト→[項目とリレーション]→[新規]を開く。
- データ型に[主従関係]を選択し、親オブジェクトを指定する。
- レコード作成、共有、親削除、ロールアップサマリーの動作をSandboxでテストする。
あわせて覚えておきたいポイント
- 主従関係の本質は、子の所有・共有・存続が親に従うことです。
- 多対多関係は、2つの主従関係を持つ連結オブジェクトで表現できます。
- 子側に独立した担当者、キュー、共有ルールが必要なら、主従関係ではなく参照関係を検討します。
- 「最大2つの主従関係」と「主従関係が最大3階層まで連鎖できること」を混同しないようにします。
出典(Salesforce公式)
- Object Relationships Overview — 主従関係では、親が子の動作を制御し、子の所有者と共有が親に従う。親には標準またはカスタムオブジェクトを使用できる。
- Considerations for Relationships — カスタムオブジェクトに作成できる主従関係は最大2つであり、標準オブジェクトは主従関係の子側にはできない。
- Roll-Up Summary Field — ロールアップサマリー項目は、主従関係で関連付けられた子レコードの値を親側で集計する。