Salesforceの変更セットを利用したデプロイ作業中に、依存関係が一部ユーザーにだけ表示されず、デプロイが失敗したり原因特定に時間がかかった経験はありませんか。この問題はユーザーの権限設定や変更セットの状態、さらにはブラウザのキャッシュなど複数の要因が絡むため、ひとつの画面だけを見ていても解決できません。本記事では、監査ログと変更セットの履歴を活用して、依存関係が見えない根本原因を特定する手順を詳しく解説します。管理者の皆さまが実務で即活用できる情報に絞ってまとめましたので、ぜひ参考にしてください。
【要点】この記事で確認すること
- 最初に見る場所: 設定の「監査ログ」で変更セット関連のイベント(ChangeSetUpload、ChangeSetDeploy)を確認し、次に「変更セット」の履歴タブで各バージョンの差分をチェックします。
- 切り分けの軸: ユーザーのプロファイル権限(参照・編集・作成)の有無、変更セットの状態(アップロード済みか未完了か)、ブラウザのキャッシュや拡張機能の影響、さらにSandboxと本番環境のメタデータ整合性の4軸で原因を絞り込みます。
- 注意点: 依存関係は自動計算されるため、権限が不足していると依存関係タブ自体が表示されないことがあります。プロファイルや権限セットの変更は影響範囲が大きいため、管理者アカウントで一時的に権限を付与して検証してから恒久対応することをおすすめします。
ADVERTISEMENT
目次
変更セットの依存関係が表示されない原因を切り分ける
変更セットの「依存関係」タブは、デプロイに必要なコンポーネントを自動リストアップしますが、特定のユーザーにだけ表示されない場合があります。まずは以下の3つの観点で原因を切り分けてください。
ユーザーの権限とプロファイル設定を確認する
依存関係を表示するには、該当するメタデータタイプに対して「参照」権限が最低限必要です。例えばカスタムオブジェクトの依存関係を見るためには、そのオブジェクトに対する「参照」権限がプロファイルまたは権限セットで有効になっている必要があります。権限がないユーザーは依存関係タブに何も表示されない、またはタブ自体がグレーアウトします。確認手順としては、問題のユーザーのプロファイルを開き、該当オブジェクトや項目の権限を一覧表示します。また、権限セットが複数割り当てられている場合は、権限の重複や競合がないかも確認してください。
変更セットの状態とブラウザ環境の確認
変更セットが「アップロード済み」状態でなければ依存関係は計算されません。未完了の変更セットでは依存関係を表示できません。また、ブラウザのキャッシュやシークレットウィンドウでも挙動が変わることがあります。特にChromeの拡張機能がSalesforceのUIに干渉するケースも報告されています。いったんシークレットモードで確認し、それでも表示されなければブラウザキャッシュをクリアしてください。
Sandboxと本番環境のメタデータ整合性
変更セットをアップロードしたSandboxと、参照している本番環境のメタデータが一致していない場合、依存関係が正しく計算されないことがあります。例えば、Sandboxにしか存在しないカスタム項目を変更セットに含めていると、本番側でその項目が見つからず依存関係の表示が不完全になります。このようなケースは監査ログにエラーとして記録されます。
監査ログからユーザー操作を確認する方法
Salesforceの監査ログ(設定>監査ログ)には、変更セットのアップロードやデプロイ、ユーザーのログイン履歴などが記録されます。依存関係が見えない問題を調査する際は、以下の手順でログを確認します。
- 設定メニューから「監査ログ」を開き、表示期間を「過去30日間」など十分な範囲に設定します。
- 「イベントタイプ」フィルターで「ChangeSetUpload」と「ChangeSetDeploy」を選択します。これにより変更セット関連の操作のみに絞り込めます。
- 問題のユーザーの操作を探すために、ユーザー名またはIDでフィルターを追加します。
- 各イベントの詳細をクリックし、「変更内容」フィールドにエラーメッセージや警告がないか確認します。特に「REQUIRED_DEPENDENCY_MISSING」のような文字列があれば、依存関係が欠落している可能性があります。
- 同時刻の別ユーザーの操作と比較することで、表示されない原因が権限なのか操作ミスなのか判断できます。管理者アカウントで同じ変更セットを開いた場合に依存関係が表示されるなら、権限の問題である可能性が高いです。
変更セットの履歴でバージョン管理を確認する
変更セットのオブジェクト詳細ページには「履歴」関連リストがあり、各バージョンのアップロード日時や変更者、変更内容の差分が記録されます。依存関係が消えたように見える場合、過去のバージョンで正しく表示されていたかどうかを確認できます。
履歴タブの見方と活用
変更セットの編集画面で「履歴」をクリックすると、タイムライン形式で操作が表示されます。各行を展開すると「変更前」と「変更後」の値が表示されるため、いつ依存関係が変わったのか、誰がどのコンポーネントを追加・削除したのかが明確になります。例えば、ある管理者が誤って依存関係にあるApexクラスを変更セットから削除した場合、その操作が履歴に残ります。
差分比較による特定
履歴から特定のバージョンの変更セットを選び、「ダウンロード」機能でXMLの差分を取得することも可能です。ただし、差分を直接比較するにはサードパーティツールが必要になるため、まずは画面上の履歴情報で十分な場合が多いです。依存関係が表示されなかったユーザーと表示されたユーザーの間で、履歴の見え方に違いがあるかを確認してください。
アクセス権限・プロファイル設定の確認手順
依存関係の表示に必要な権限を具体的に確認する手順を説明します。以下の表は、代表的なメタデータタイプと必要な権限の関係です。
| メタデータタイプ | 必要な権限(プロファイル/権限セット) | 備考 |
|---|---|---|
| カスタムオブジェクト | 「参照」権限(オブジェクト権限) | タブ表示権限は不要 |
| カスタム項目 | 親オブジェクトの「参照」権限、および項目レベルのセキュリティで「参照可能」 | 項目が依存関係にリストアップされない場合がある |
| Apexクラス | 「Apexクラスの参照」権限 | クラスが有効かどうかも確認 |
| Visualforceページ | 「Visualforceページの参照」権限 | アクセス権限がなくても依存関係に表示される場合あり |
確認手順として、問題のユーザーのプロファイルを直接編集する前に、管理者アカウントで一時的に権限セットを割り当てて依存関係が表示されるかテストすることをおすすめします。それでも表示されない場合は、他の要因(変更セット自体の問題やブラウザ環境)を疑います。
よくある設定ミスと失敗パターン
実際の現場で発生しやすい失敗パターンをいくつか紹介します。
- 権限セットの割り当てが不完全: 複数の権限セットを組み合わせて運用している場合、目的の権限が別の権限セットで上書きされていることがあります。監査ログで権限変更の履歴を確認することで、いつどの権限が変わったかを追跡できます。
- 変更セットに含まれていない依存コンポーネント: 自動計算された依存関係リストを信用して、手動でコンポーネントを削除してしまったケースです。変更セットの履歴を見れば、削除操作の有無が明確に残っています。
- Sandboxのメタデータが古い: 本番環境で最近リリースした変更がSandboxに反映されておらず、結果として依存関係が計算できないパターンです。この場合、監査ログに「DEPENDENCY_COMPUTATION_ERROR」のようなエラーが記録されます。
- ブラウザのキャッシュによる表示の不一致: 特定のユーザーだけキャッシュが古い状態で、依存関係の再計算が行われないケース。シークレットモードで正常表示されればキャッシュが原因です。
管理者に伝えるべき情報のまとめ
問題をサポートにエスカレーションする場合、以下の情報を整理しておくと解決がスムーズです。
- 問題のユーザーID、ユーザー名、割り当てられているプロファイルと権限セットの一覧
- 対象の変更セット名、アップロード日時、バージョン番号、および履歴のスクリーンショット
- 監査ログの該当イベントのログIDと詳細(特にエラーメッセージの有無)
- 他のユーザーでは依存関係が表示されるかどうか、表示されるユーザーのアカウント情報
- 試したトラブルシューティングの手順(ブラウザ変更、権限付与テストなど)
これらの情報をあらかじめ準備しておけば、Salesforceサポートとのやりとりが効率的になります。
よくある質問(FAQ)
Q1. 依存関係タブ自体が表示されないのはなぜですか?
原因として、変更セットが「アップロード済み」状態でない、またはユーザーに「変更セットの編集」権限がない可能性があります。まず変更セットの状態を確認し、権限セットで「変更セットの編集」を有効にしてください。
Q2. 監査ログに変更セットの操作が記録されていません。
監査ログは特定のイベントタイプのみ記録します。変更セットのアップロードやデプロイは記録されますが、変更セットの編集(コンポーネントの追加・削除)は記録されませんので注意してください。編集内容は変更セットの履歴で確認します。
Q3. 別のユーザーでログインすると依存関係が表示されるのに、自分だけ見えません。
権限不足の可能性が高いです。プロファイルまたは権限セットの設定を見直してください。また、ブラウザのキャッシュやシークレットモードでも試してみてください。
まとめ
変更セットの依存関係が一部ユーザーだけ見えない問題は、監査ログと変更セットの履歴を組み合わせて調査することで原因を特定できます。まずは問題のユーザーの権限設定を確認し、監査ログから関連イベントを抽出してエラーの有無を確認します。次に変更セットの履歴でバージョン間の差分をチェックし、コンポーネントの変更履歴を追跡します。これらの手順を踏めば、権限不足や設定ミス、メタデータの不整合といった原因を効率的に切り分けられます。普段から変更セットの操作を監査ログで記録する習慣をつけておくと、トラブルシューティングが格段に楽になります。
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【Excel】文字が入っているセルの「個数」を数える!COUNTA関数の簡単な使い方
- 【Copilot】「サービスに接続できません」エラーの原因切り分けと対処法
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
- 【Excel】矢印キーで「セルが動かず画面がスクロールする」!ScrollLockの解除方法(ノートPC対応)
