今回は、Dataloaderrを使用してプロファイル毎の項目レベルセキュリティ一覧を作成する方法をご紹介します。便利なAppExchangeやGoogleの拡張アドオンなどが利用できる環境であれば、もっと簡単に作成することもできると思いますが、Dataloaderしか使用できないような環境の場合に参考になれば幸いです。
この一覧を作成するにあたり参考にさせていただいたブログは「
マウス連打はさようなら!データローダでオブジェクト権限と項目レベルセキュリティを一括設定!!」です。
【今回使用するファイル】
・項目名とAPI名のリスト(画面コピーと整形にて作成)・権限セットのリスト(Dataloaderで抽出)
・項目権限のリスト(Dataloader
で抽出 )
【作成方法】
・項目名とAPI名リスト

①[オブジェクトマネージャ]から項目レベルセキュリティ一覧を作成したいオブジェクトを開き、[項目とリレーション]を開き、画面を全選択する。
②Excelを開き、「貼り付け先の書式に合わせて」貼り付け
③ヘッダーになる部分の「SORT」「SORTED ASCENDING」などの文字と「アクションの列」など不要な部分を削除
・権限セットのリスト

①Dataloaderを起動し、
[Export]-[Show all Salesforce objects]にチェックを入れ、検索窓に「
権限セット」と入力し、検索結果の中から「権限セット」を選択する

②「Next」ボタンで次の画面に進み、Exportする項目を選択し、Exportを実行する

💡ここでのポイント💡
プロファイル名もExport項目として追加できる
「Choose the query fields below」の欄の選択肢には、プロファイル名は表示されないが、「Profile.Name」をクエリが表示される欄で追加することで「プロファイル名」もExportすることができる。
※クエリの記載方法については、「
SOQL使ってますか?」を参照
・項目権限のリスト
①Dataloaderを起動し、[Export]-[Show all Salesforce objects]にチェックを入れ、検索窓に「項目」と入力し、検索結果の中から「項目権限」を選択する
②「Next」ボタンで次の画面に進み、Exportする項目を選択し、Exportを実行する
💡ここでのポイント💡
カスタムオブジェクトの指定も追加できる
「Create the where clauses to your query below.」の「SubjectType」の欄の選択肢では、標準オブジェクトしか選択できない(①②)が、一旦任意のオブジェクトを選択し条件を追加(③)後に、Exportしたい
カスタムオブジェクト名に書き換える(④)ことができる
【Excelでの加工】
必要なリストが揃ったので、全部のリストをExcelに展開し、Vlookやピボットを駆使してリストを仕上げていきます。
作業の順番等は、データの量や目的でかわってくるかと思います。
・項目名とAPI名リスト…「項目の表示ラベル」と「項目名」の列は入れ替えておいた方がExcelで作業する場合はおすすめです。(Accessを使用される場合は項目の並び等を気にする必要はないかと思います。)
・項目レベルセキュリティをExportしたファイルの「PARENTID」に「プロファイル名」を表示させる
※下図では、必要なプロファイルのみを表示させるようにしています。

・項目名を反映させ、ヘッダー名も修正し、ピボットテーブルで使用するために権限があるものを「1」、ないものを「0」にします。

・値で貼り付け、ピボットで表にしたものを値で貼り付け、画面キャプチャをとっておいたものと
見比べてみます。

標準項目の部分はありませんが、一覧が作成できました!
見直したい項目とプロファイルが多い場合、手でチェックや〇を入れながら作成するより格段に速いのではないでしょうか?
プロファイル毎の項目レベルセキュリティの一覧は、個人的には手持ち資料として持っておきたいものの一つです。