Administrator 練習問題 Q294
ある営業担当者のグループは、レポート上で互いの注文を参照できてしまいます。彼らは自分の注文だけを参照できるレポートを希望しています。プラットフォーム管理者はこのレポートをどう設定すべきですか?
左の○で回答を選択。本文を押すと横線で除外でき、もう一度押すと戻せます。
1つ選択してください(0/1)
正答:B. [商談の所有者]が $USER と一致するという条件で絞り込む
解説
前提知識
レポートのフィルターとは
レポートのフィルターは、レポートが集計する行(レコード)を絞り込む条件です。所有者、金額、日付などの項目に条件を付けて、必要なレコードだけを残します。フィルターはレポートの定義として保存されるため、そのレポートを開いた全員に同じ条件が適用されます。
実行ユーザー(レポートを開いた人)で絞るとはどういうことか
「自分の分だけ見たい」という要件では、ユーザーごとにレポートを量産する必要はありません。所有者などのユーザー項目に対して、レポートを実行している本人を指す条件を設定すれば、1つのレポートで全員が自分の分だけを見られます。
Salesforce公式は、Lightning Experienceのレポートで所有者や作成者といったユーザー関連項目のフィルターを個別化でき、結果を現在サインインしているユーザーに限定するには[相対値を使用]を選ぶ、と説明しています。この設定では、フィルター値が $USER として表示され、レポートを開いたユーザーに応じて動的に変わります。
標準フィルター([表示]/Show Me)とは
レポートには、オブジェクトごとに「自分の取引先」「すべての取引先」のような一般的なくくりを選ぶ標準フィルターが用意されています。所有者ベースで自分の分だけに絞る、いちばん手数の少ない方法です。
組織の共有設定(OWD)とレポートフォルダーは別物
初学者が最も混同するのがここです。
- 組織の共有設定(OWD):そのオブジェクトのレコードを、所有者以外がどこまで参照できるかというデータそのものの公開範囲
- レポートフォルダー:レポートという部品の置き場所とアクセス権。フォルダーの権限は、レポートを開けるかどうかを決めるだけで、レポートに出る行を絞り込むものではない
💡 ここがまだモヤッとする方へ:レコードの公開範囲がどう決まるのかは、共有設定の全体像:組織の共有設定・ロール階層・共有ルール で整理しています。 💡 フォルダー側のアクセス権が知りたい方へ:レポート/ダッシュボードフォルダの共有とアクセスレベル:サブフォルダへの継承ルール を読むと、フォルダー権限が「行の絞り込み」ではないことがはっきりします。
設問の状況を分解する
- 現状:営業担当者のグループが、レポート上で互いのレコードを参照できている
- 要望:自分が所有するレコードだけが出るレポートにしたい
- 変えたいのは「レポートの見え方」であり、組織全体のデータアクセス方針ではない 誤解しやすい点は2つです。
- レポートに他人のレコードが出るのは、そのユーザーがそのレコードを参照できる権限を持っているからです。レポートが権限を無視して見せているわけではありません。
- 「自分の分だけ見せたい」=「共有設定を厳しくする」ではありません。共有設定を変えると、レポート以外のすべての画面(一覧、検索、関連リスト)にも影響します。今回はレポートの条件で解決できます。
選択肢の検討
A. そのユーザー向けにレポートを非公開フォルダーに保存する → ✕
フォルダーは、レポートを誰が開けるかを制御する仕組みです。非公開フォルダーに入れても、そのレポートを開いた人には条件に一致する全レコードが表示されます。さらに、担当者ごとにフォルダーとレポートを複製する運用は現実的ではありません。「特定のレポートを一部の人にだけ見せたい」という要件なら、フォルダーの共有が正解になります。
B. [商談の所有者]が $USER と一致するという条件で絞り込む → ⭕ 正解
所有者項目に「レポートを実行している本人」を指す条件を設定すれば、1つのレポートを共有したまま、各担当者には自分が所有するレコードだけが表示されます。レポート側の条件だけで完結し、組織のデータアクセス方針には一切触りません。設問の「自分の分だけ参照できるレポート」という要求にそのまま対応します。
C. 注文オブジェクトの組織の共有設定を非公開にする → △(惜しいが不正解)
確かに共有設定を非公開にすれば、他人のレコードはレポートにも出なくなります。しかし影響範囲がレポートに留まりません。一覧ビュー、検索結果、関連リスト、既存の業務すべてで他人のレコードが見えなくなり、上司や関連部門の参照も止まります。 判別基準はこうです。「レポートの見え方だけを変えたい」ならフィルター、「そもそも他人のデータを見せてはいけない」なら共有設定です。後者が要件なら、こちらが正解になります。
D. [主要]の商談フィルターを True に設定する → ✕
商談レポートの特殊値[主要]は、[パートナー商談]レポートで商談の主要パートナーだけに絞り込むための条件です。レコード所有者を現在のユーザーに限定する条件ではないため、営業担当者ごとに自分の商談だけを表示する要件には対応しません。
⚠️ 本問の日本語データには、対象オブジェクトの表記が「注文」と「商談」で揺れている箇所があります(問題文と選択肢C=注文、選択肢BとD=商談)。所有者項目でレポートを絞るという解法自体は、注文でも商談でも同じです。表記の揺れがどちら側の誤りかは確認できていないため、原文の表記を残しています。
管理者としての対処手順
- [レポート]タブから対象レポートを開き、[編集]をクリックする
- 左パネルの[フィルター]で、まず標準フィルター([表示])を確認する。所有者ベースで自分の分に絞れるくくりがあれば、それを選ぶだけで済む
- 項目フィルターを追加する場合は、所有者項目(例:商談の所有者、注文の所有者)を選ぶ
- 値の指定で、固定のユーザー名を入れずに、レポートを実行しているユーザーに限定するオプション(相対値)を選択する
- [適用]→[保存]し、フォルダーは対象チームが参照できる共有フォルダーのままにする
- 担当者2名以上で実際に開き、それぞれ自分のレコードだけが表示されることを確認する
| 要件 | 使う仕組み | 影響範囲 |
|---|---|---|
| 1つのレポートで各自の分だけ見せたい | 所有者フィルター(実行ユーザーで絞る) | そのレポートだけ |
| レポート自体を見せる/見せないを分けたい | フォルダーの共有 | そのフォルダー配下のレポート |
| 他人のレコードそのものを見せたくない | 組織の共有設定(OWD)+共有ルール | 組織全体のすべての画面 |
| 部下の分だけ上司に見せたい | ロール階層+標準フィルター | 階層に基づくデータ参照 |
あわせて覚えておきたいポイント
- レポートは権限の抜け道にはなりません。表示されるのは、実行ユーザーが参照権限を持つレコードのうち、フィルター条件に一致したものだけです。
- 逆に、フィルターはセキュリティの代わりにもなりません。担当者にレポートの編集権限があれば、フィルターを外して他人のレコードを見られます。データを本当に隠す必要があるなら共有設定で制御します。
- 固定のユーザー名でフィルターすると、そのユーザーが異動・退職したときにレポートが壊れます。実行ユーザーで絞る方法は、この保守コストも消せます。
- ダッシュボードで同じ要件が出た場合は、実行ユーザーの設定(動的ダッシュボード)で解決します。レポートのフィルターとは別の仕組みなので区別して覚えます。
出典(Salesforce公式)
- Filter Reports by Values — 「Lightning Experienceでは取引先所有者や作成者などのユーザー項目のフィルターを個別化でき、結果を現在サインインしているユーザーに限定するには相対値のオプションを選択する」
- Filters Type Reference — 「[表示](Show Me)フィルターは『自分の取引先』のような一般的なくくりでオブジェクトを絞り込む」
- Create a Personalized Report Filter — 「ユーザー関連項目で[相対値を使用]を選ぶと、フィルター値が現在サインインしているユーザーに応じて動的に変わり、$USER として表示される」
- Access to Report Folders — 「レポートフォルダーへのアクセスは権限で制御され、公開・非公開・共有フォルダーの参照可否を決める」
- Organization-Wide Sharing Defaults — 「組織の共有設定は、オブジェクトごとにレコードアクセスの基準値を定める設定である」
- Create Filters that Use Special Picklist Values — 「商談の[主要]は[パートナー商談]レポートで主要パートナーを示す特殊値であり、所有者フィルターではない」
- Order Sharing — 「注文レコードの共有は組織のデフォルト共有モデルに従い、既定より広くも設定できる」