Administrator 練習問題 Q39
Cloud Kicksには、Shipmentsと呼ばれるカスタムオブジェクトがあります。会社は、アカウントページからすべての出荷アイテムを確認したいと考えています。アカウントが削除されても、出荷は残ります。管理者は、出荷とアカウントの間でどのような種類の関係を築く必要がありますか?
左の○で回答を選択。本文を押すと横線で除外でき、もう一度押すと戻せます。
1つ選択してください(0/1)
正答:A. 出荷にはアカウントへのルックアップが必要です。
解説
前提知識
ルックアップ関係と主従関係の違い(要点)
- ルックアップ関係:参照元レコードにルックアップ項目を作り、別のレコードを参照する関係です。参照先が削除されたときの動作として、任意のルックアップ項目では通常[この項目の値をクリア]または[参照されるレコードの削除を許可しない]を選択できます。今回の要件では[この項目の値をクリア]を選び、出荷レコードを残します。
- 主従関係:親と子が強く結びついた関係です。親レコードを削除すると、関連する子レコードもカスケード削除されます。
🧩 主従関係とルックアップ関係の削除時の挙動の違いは、主従関係とルックアップ関係:削除の挙動から理解する で詳しく解説しています。あわせてご覧ください。
設問の状況を分解する
- Shipments(出荷)というカスタムオブジェクトを、取引先(Account)ページから確認できるようにしたい。
- ただし「取引先が削除されても出荷レコードは残したい」という明確な要件がある。
- この「親が消えても子は残したい」という要件こそが、関係の種類を決める決め手になります。
選択肢の検討
A. 出荷にはアカウントへのルックアップが必要です。 → ⭕
Shipments側にAccountへのルックアップ項目を作成すると、取引先ページの関連リストに複数の出荷を表示できます。参照先の削除時動作を[この項目の値をクリア]にすれば、取引先を削除しても出荷レコードは残り、Account参照だけが空になります。
B. アカウントはShipmentsを検索する必要があります。 → ✕
Account側にShipmentへのルックアップ項目を作ると、1件のAccountがその項目から1件のShipmentを参照する構造になります。複数のShipmentをAccountの子レコードとして関連リストに表示する設計にはなりません。今回必要なのはShipment側からAccountを参照する関係です。
C. 出荷には、アカウントとの主従関係が必要です。 → ✕(惜しいが不正解)
Shipmentを子、Accountを親にすると、取引先ページから関連する出荷を確認できます。しかし、Accountを削除すると関連するShipmentもカスケード削除されるため、「出荷は残す」という要件に反します。
D. アカウントには、出荷との主従関係が必要です。 → ✕
関係の向きが要件と逆です。Account側からShipmentを参照しても、1つのAccountに紐づく複数のShipmentを子の関連リストとして表現できません。また、標準のAccountオブジェクトをカスタムオブジェクトの子側にする設計ではありません。
管理者としての対処手順
- Shipmentsオブジェクトに、Accountを参照するルックアップ関係項目を作成します。
- ルックアップ項目を任意入力にし、[参照先レコードが削除された場合]の動作として[この項目の値をクリア]を選択します。
- AccountのページレイアウトまたはLightningレコードページに、Shipmentsの関連リストを追加します。
- テスト環境でAccountを削除し、Shipmentレコードが残り、Accountルックアップだけが空になることを確認します。
あわせて覚えておきたいポイント
- 「参照先を削除しても参照元レコードを残す」要件では、ルックアップ関係と削除時の[項目値をクリア]を組み合わせます。
- ルックアップ関係でも設定によって参照先の削除を禁止できるため、「ルックアップなら必ず参照先を削除できる」とは限りません。
- 主従関係では、親削除時に子も削除されます。ロールアップ集計や共有継承と引き換えに、子レコードの独立性が低くなります。
出典(Salesforce公式)
- Object Relationships Overview — ルックアップ項目で参照先削除時に[項目値をクリア]または[削除を許可しない]を選択できることを裏付けます。
- Considerations for Object Relationships — ルックアップの削除動作と、主従関係のカスケード削除に関する考慮事項を裏付けます。
- Object Relationships — ルックアップ関係と主従関係の用途、および親削除時に子も削除されることを裏付けます。