Administrator 練習問題 Q171
DreamHouse Realty チームは、オープン ハウスを親オブジェクト、訪問者を子オブジェクトとする主従関係を設定しています。訪問者数を追跡するために、管理者はオープン ハウス オブジェクトにどのタイプのフィールドを追加する必要がありますか?
左の○で回答を選択。本文を押すと横線で除外でき、もう一度押すと戻せます。
1つ選択してください(0/1)
正答:A. ロールアップ サマリー。
解説
前提知識
主従関係(マスター・詳細リレーション)
親レコードと子レコードを強く結びつけるリレーションです。親を削除すると子も削除され、子のアクセス権は親に従います。今回は「オープンハウス(親)― 訪問者(子)」がこの関係になっています。
💡 ここがまだモヤッとする方へ → 主従関係とは何か:親が消えたら子も消える関係
ロールアップサマリー項目
親レコード側に作る項目で、子レコードを集計して自動で値を表示します。Salesforce公式は「マスターレコードに関連する詳細レコードの件数をカウントできる。合計・最小値・最大値も計算できる」と説明しています。 集計タイプは次の4つです。
| タイプ | 内容 |
|---|---|
| COUNT | 子レコードの件数 |
| SUM | 指定した数値項目の合計 |
| MIN | 最小値 |
| MAX | 最大値 |
重要な制約がひとつあります。Salesforce公式Trailheadは「ロールアップサマリー項目は主従関係に基づく。主従関係のマスター側のオブジェクトに定義する」と明記しています。
設問の状況を分解する
条件を並べると、答えは自動的に決まります。
- オープンハウスが親、訪問者が子の主従関係
- 追加したいのは**オープンハウス側(親側)**の項目
- 知りたいのは訪問者の数(子の件数) 「主従関係」「親側に項目を追加」「子の件数を数える」。この3つが揃ったら、ロールアップサマリー項目のCOUNT以外に選択肢はありません。 なお、ロールアップサマリー項目が作れるのは主従関係のときだけです。参照関係(Lookup)では作れないので、設問に「主従関係」と書いてあることには意味があります。
選択肢の検討
A. ロールアップサマリー
⭕ 正解 親オブジェクト(オープンハウス)に作成し、集計タイプに COUNT、集計対象に訪問者を指定します。訪問者レコードが追加・削除されるたびに、親側の数字が自動で再計算されます。
B. 複数選択ピックリスト
✕ 複数選択ピックリストは、あらかじめ用意した選択肢から人が手動で複数選ぶ項目です。計算機能は一切なく、子レコードを数えることはできません。
C. クロスオブジェクト数式項目
△(惜しいが不正解) 方向が逆です。クロスオブジェクト数式は子から親の値を参照するもので、例えば訪問者レコード上にオープンハウスの開催日を表示する、といった使い方をします。親から子を集計することはできません。どちらも親子をまたぐ機能なので、最も迷いやすい選択肢です。
D. 間接参照
✕ 間接参照関係は、外部ID項目を使って外部オブジェクトと標準/カスタムオブジェクトをつなぐためのリレーションです。Salesforce Connect の文脈で使うもので、件数の集計とは無関係です。
管理者としての対処手順
- [設定]→[オブジェクトマネージャ]→**[オープンハウス(親)]**を開く
- [項目とリレーション]→[新規]をクリックする
- データ型で[ロールアップ集計]を選択する
- 項目名を
訪問者数などとして入力する - 集計するオブジェクトで[訪問者]を選択する
- 集計タイプで[Count]を選択する(合計ではなく件数)
- 必要ならフィルター条件(例:ステータス=来場済み)を追加する
- 項目レベルセキュリティとページレイアウトを設定して保存する
あわせて覚えておきたいポイント
- ロールアップサマリーにはフィルター条件を付けられます。「キャンセルされていない訪問者だけ数える」といった絞り込みが可能です。
- 参照関係(Lookup)ではロールアップサマリーを作れません。 どうしても必要なら、レコードトリガーフローで数を書き戻すなどの工夫が必要になります。
- ロールアップサマリー項目は読み取り専用です。手入力で上書きすることはできません。
- 同じ「件数を知りたい」ニーズでも、一覧で見たいだけならレポートの件数集計で十分です。レコード上に値として持ちたい、数式や自動化から参照したい場合にロールアップサマリーを選びます。
出典(Salesforce公式)
- Roll-Up Summary Field — 「マスターレコードに関連する詳細レコードの件数をカウントできる。合計・最小値・最大値も計算できる」
- Implement Roll-Up Summary Fields(Trailhead) — 「ロールアップサマリー項目は主従関係に基づく。主従関係のマスター側のオブジェクトに定義する」
- What Is a Cross-Object Formula? — クロスオブジェクト数式は関連オブジェクトの項目を参照するものであり、子レコードの件数を集計する機能ではない