Salesforceの動的関連リストは、親レコードに関連する子レコードを柔軟に表示できる便利な機能です。しかし、本番環境に反映した後に「一部のユーザーにだけレコードが表示されない」「権限エラーが発生する」といった問題が起きることがあります。これは多くの場合、権限設定の不足やオブジェクトへのアクセス権、共有ルールの不備が原因です。本番反映前に適切に切り分けを行うことで、後戻りを防ぎ、スムーズなリリースを実現できます。本記事では、動的関連リストで権限不足が発生した場合の原因特定方法と、本番反映前に行うべき確認手順を詳しく解説します。
【要点】この記事で確認すること
- 最初に見る場所: 動的関連リストが参照するオブジェクトの「組織の共有設定」と「権限セット」または「プロファイル」のオブジェクト権限。
- 切り分けの軸: ユーザー単位の権限(プロファイル/権限セット)と、レコード単位のアクセス(共有ルール/共有設定)の2軸で原因を特定する。
- 注意点: 動的関連リストの「関連リストタイプ」で使用するフィルタ条件や項目レベルセキュリティも影響するため、合わせて確認する。また、本番環境への直接変更は避け、Sandboxで十分にテストする。
ADVERTISEMENT
目次
1. 動的関連リストと権限の基本
動的関連リストは、親オブジェクトのレコード詳細ページに、関連する子オブジェクトのレコード一覧を表示するコンポーネントです。例えば、取引先の詳細ページに「関連する商談」を表示する場合、商談オブジェクトへのアクセス権と、表示したい商談レコードへの参照権限が必要です。権限不足が発生する主な原因は、以下の3つに分類できます。
- オブジェクト権限の不足:ユーザーのプロファイルまたは権限セットで、子オブジェクトの「参照」権限が付与されていない。
- レコード権限の不足:子レコードが共有ルールや組織の共有設定によってアクセス制限されている。
- 項目レベルセキュリティの影響:動的関連リストのフィルタ条件で使用する項目が、ユーザーに参照不可に設定されている。
これらの原因は単独で発生することもあれば、複合的に絡み合うこともあります。本番反映前のSandbox環境で、実際のユーザープロファイルを模擬してテストすることが重要です。
2. 権限不足が発生する主な原因の詳細
2-1. オブジェクト権限の設定漏れ
動的関連リストに表示する子オブジェクトに対して、ユーザーが少なくとも「参照」権限を持っている必要があります。多くの場合、「標準オブジェクト権限」はプロファイルで管理されますが、カスタムオブジェクトは権限セットで付与するケースが増えています。権限設定が漏れていると、動的関連リスト自体は表示されても中身が空になったり、エラーメッセージが表示されたりします。
2-2. レコードレベルのアクセス制限
組織の共有設定が「公開/参照のみ」や「非公開」になっている場合、ユーザーが自分が所有していないレコードや、共有ルールの条件に合致しないレコードを参照できないことがあります。動的関連リストは、そのユーザーがアクセス権を持つレコードのみを表示するため、権限不足と感じる現象が発生します。特に、営業チームなど特定のグループだけにレコードを共有する設定を行っている場合に注意が必要です。
2-3. 項目レベルセキュリティの影響
動的関連リストでは、フィルタ条件や表示項目を設定できます。その際、フィルタで使用する項目がユーザーの項目レベルセキュリティで「参照不可」になっていると、エラーが発生したり、リストが正しく表示されなかったりします。また、表示する項目自体が参照不可の場合も、動的関連リストの表示に影響を与えることがあります。
3. 本番反映前の切り分け手順
以下の手順はSandbox環境で実施し、原因を特定してから本番環境に反映することを推奨します。
- ステップ1:問題を再現するユーザーを特定する。管理者権限のあるユーザーでは問題なく表示されるが、一般ユーザーで表示されない場合、権限の差が疑われます。複数のユーザーで確認し、現象の範囲を把握します。
- ステップ2:ユーザーのプロファイルと権限セットを確認する。対象ユーザーが持つプロファイルと権限セットの一覧を取得し、動的関連リストの子オブジェクトに対する「参照」権限が付与されているか確認します。権限セットが複数ある場合は、それらの合算で権限が決定される点に注意します。
- ステップ3:組織の共有設定と共有ルールを確認する。子オブジェクトの「組織の共有設定」が「非公開」の場合、共有ルールでアクセス権が付与されているか確認します。共有ルールの条件に該当するレコードのみ表示可能です。
- ステップ4:動的関連リストのフィルタ条件と使用項目を確認する。フィルタで使用している項目の「項目レベルセキュリティ」を確認し、対象ユーザーが参照可能かチェックします。また、表示する項目にも同様の確認を行います。
- ステップ5:手動で子オブジェクトのレコードにアクセスしてみる。問題のユーザーで、子オブジェクトのタブや検索から該当レコードに直接アクセスできるか試します。直接アクセスできない場合、レコード権限の問題である可能性が高いです。
- ステップ6:権限の一時的な付与で動作確認する。Sandbox環境で、対象ユーザーに「すべてのデータ参照」権限を持つ権限セットを一時的に割り当て、動的関連リストが正常に表示されるか確認します。表示されるようになれば、権限不足が原因と断定できます。テスト後は権限セットを削除します。
4. 確認すべき設定項目の比較表
原因を切り分ける際に確認すべき設定項目を表にまとめました。各項目の「確認方法」と「影響する権限の種類」を把握することで、効率的にトラブルシューティングが行えます。
| 確認項目 | 確認場所 | 権限の種類 | 備考 |
|---|---|---|---|
| 子オブジェクトの参照権限 | プロファイル / 権限セット | オブジェクト権限 | 「参照」がオンになっているか確認 |
| 組織の共有設定 | 設定 > 共有設定 | レコード権限 | デフォルトのアクセス権を確認 |
| 共有ルール | 設定 > 共有ルール | レコード権限 | 条件に合致するか確認 |
| 項目レベルセキュリティ | プロファイル / 権限セットの項目権限 | 項目権限 | フィルタ項目や表示項目が参照可能か |
| 動的関連リストのフィルタ定義 | Lightningアプリケーションビルダー | 設定ミス | フィルタ条件のオブジェクトや項目が正しいか |
| 親子関係の参照整合性 | オブジェクトマネージャ | データモデル | 参照関係が正しく設定されているか |
5. 失敗パターンと回避策
実際の現場でよく見られる失敗パターンをいくつか紹介します。これらの事例を参考に、同じ過ちを繰り返さないように注意してください。
失敗パターン1:権限セットの割り当て漏れ
カスタムオブジェクトの参照権限を権限セットで管理している場合、新しく作成した権限セットを対象ユーザーに割り当てるのを忘れることがあります。Sandboxでテストする際は、実際に割り当てを行うか、権限セットグループを使用して一括管理するとミスを防げます。
失敗パターン2:共有ルールの条件が複雑すぎる
共有ルールで「取引先チームメンバーのみ表示」など、ロールやチームに依存する条件を設定していると、動的関連リストで表示されるレコードが想定よりも少なくなることがあります。この場合、共有ルールの条件を簡略化するか、別の共有方法(公開グループなど)を検討します。
失敗パターン3:項目レベルセキュリティの確認漏れ
動的関連リストのフィルタに「商談ステージ」などの項目を使っているとき、その項目が一部のプロファイルで「参照不可」になっていると、エラーが発生します。プロファイルごとに項目アクセスを確認し、必要な項目は最低限「参照」を許可する必要があります。
6. 管理者に確認すべきポイント
権限不足の原因を特定するためには、Salesforce管理者と連携して以下の情報を入手することが有効です。あらかじめ確認すべきポイントをリストアップし、管理者に依頼しましょう。
- 対象ユーザーに割り当てられているプロファイルと権限セットのリスト
- 子オブジェクトの「組織の共有設定」の現在値(公開/非公開など)
- 該当する共有ルールの定義内容(条件と共有先)
- 動的関連リストで使用しているフィルタ項目と表示項目の項目レベルセキュリティ設定
- Sandbox環境で権限を一時的に付与してテストするための権限セットの作成可否
管理者に依頼する際は、具体的なユーザー名やオブジェクト名、画面キャプチャなどを添えて伝えるとスムーズです。
7. よくある質問
Q1. 動的関連リストが完全に表示されず、エラーメッセージも出ません。何が原因ですか?
最も多い原因は、子オブジェクトに対する参照権限がないことです。また、動的関連リストのコンポーネント自体が非表示設定になっている場合もあります。設定を確認しましょう。
Q2. 権限セットを追加したのに、反映されません。どうすればよいですか?
権限セットの割り当て後、即時反映されない場合があります。ユーザーのセッションを再ログインさせるか、Sandboxの場合はキャッシュのクリアが必要なことがあります。それでも反映されない場合は、権限セットの有効期限やプロファイルとの競合を確認します。
Q3. 動的関連リストでは一部のレコードだけ表示されません。共有ルールが原因ですか?
はい、共有ルールの条件に合致しないレコードは表示されません。例えば、商談の所有者が自分でないレコードは表示されないというルールになっている場合、他の所有者のレコードは除外されます。共有ルールの条件を見直してください。
Q4. 項目レベルセキュリティを変更すると、他の画面に影響しますか?
項目レベルセキュリティはすべての画面に影響するため、慎重に変更する必要があります。動的関連リストのためだけに項目を参照可能にすると、本来非表示にしたかった情報が見えてしまう可能性があります。代替案として、フィルタ条件を変更してその項目を使わない方法も検討しましょう。
まとめ
動的関連リストの権限不足は、オブジェクト権限、レコード権限、項目レベルセキュリティのいずれか、またはそれらの組み合わせによって発生します。本番反映前のSandbox環境で、実際のユーザープロファイルを模したテストを行い、権限設定を網羅的に確認することが重要です。万一、問題が発生した場合でも、本記事で紹介した切り分け手順に従えば原因を特定しやすくなります。また、権限設定の変更は影響範囲が広いため、必ずSandboxで検証してから本番環境に適用してください。適切な権限管理により、動的関連リストを活用した業務効率化を実現しましょう。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
- 【PDF】PDFのサムネイルプレビューが表示されない!エクスプローラーの設定とAcrobat環境設定
- 【Excel】矢印キーで「セルが動かず画面がスクロールする」!ScrollLockの解除方法(ノートPC対応)
- 【Teams】会議の「参加者リスト」を出席後にダウンロードする!誰が参加したか確認する手順
