Salesforceでデータをキレイに保つために、重複レコードの管理は欠かせません。本記事では、重複チェックレポートを活用して、重複レコードを簡単に特定し、マージや削除を効率的に行う方法を2種類ご紹介します。
- 重複レコードを一致ルール・重複ルールでカスタムレポート抽出する方法
- 一致ルール・重複ルール有効化前の重複レコードもチェックするためのレポート作成方法
重複レコードを一致ルール・重複ルールでカスタムレポート抽出する方法
まずは公式に推奨されている、一致ルール・重複ルールを用意してからカスタムレポートで重複を発見する方法を紹介します。
一致ルール・重複ルールについてはこちらの記事で詳しく紹介しています。
全体の流れとしては、以下の通りです。
- 一致ルールを作成する
- 重複ルールを作成し作成時・編集時の操作項目で「レポート」を選択する
- カスタムレポートタイプで「重複レコード項目」を選択する
- レポートを作成する
まず一致ルールを設定します。
続いて重複ルールを設定します。この時、作成時の操作・編集時の操作項目で「レポート」をtrueにしておきます。
次に、カスタムレポートタイプを作成します。
カスタムレポートタイプについてはこちらの記事で詳しく解説しています。
カスタムレポートタイプは、今回はサンプルとして以下のように設定しました。
オブジェクトリレーションを選択する画面で、主オブジェクトの下に「重複レコード項目」を配置します。
今回は重複レコードが「ある」ものを抽出したいので、「AレコードにBレコードあ1つ以上必要」を選択します。カスタムレポートタイプを保存します。
次に、レポートタブをクリックし、さきほど作ったカスタムレポートタイプを使用してレポートを作成していきます。
アウトラインの検索窓に「重複」と入れると、重複系の項目がずらっとでてきます。これを見ると、重複というオブジェクトにレコードが出来ることで重複を管理しているのだということが分かります。
特に絞り込み条件はなく、すべての取引先責任者が出てくる設定でリリースしてみます。
スクリーンショットを撮り漏れたのですが、すべての取引先責任者を表示しているのに、下図の緑枠の人は重複として出てきたのに、
赤枠の人は出てきませんでした。
これは一致ルール・重複ルールを有効化した後でないと、重複オブジェクトのレコードが作成されないことが関係しています。
重複については公式Help重複レコードセットで詳しく解説されています。
前述のレポートで重複として出てこなかった、Nedaerkさんの3人目の重複レコードを試しにコピーして作ってみました。すると、下図の通り重複レポートに出てきました。
重複レコードを作成したときに一致ルール・重複ルールが有効になっていると、「重複レコード項目」のレコードが作成される挙動のようです。下図では一致ルール・重複ルールが有効になったあとでNedaerkさんが3人表示されていますが、この3人には有効化前の2件の重複も含まれています。有効化前には「重複レコード項目」のレコードが作成されないので重複レポートに上がってこないが、有効化後に重複レコードを作ったら、その時点の重複レコードが検出される仕様です。
なので、Salesforce導入時に一致ルール・重複ルールを有効化していた、もしくは現状まだ重複がそこまでない、ということであれば、この方法で重複チェックとマージや削除を実施していくのが推奨されると思います。
それでは、すでに大量の重複レコードが作られていて、適切な一致ルール・重複ルールが設定されていない組織ではどうしたらよいでしょう?
以下のやり方があるから大丈夫です!
一致ルール・重複ルール有効化前の重複レコードもチェックするためのレポート作成方法
以下のように、氏名でグルーピングしたレポートを作って対応することで、過去分も含め重複レコードをチェックすることが出来ます。
氏名だけだと同姓同名の人がいるかも…という場合には、氏名+メールアドレスなど、一致ルール・重複ルールに仕込むような条件を数式で作っておき、その数式をグルーピング項目として使用すれば問題ありません。
最後に、重複レコードをマージしようとすると以下のような専用画面でどの項目を正とするのかを選択することになります。
ここだけは、判断できる人が地道にやっていく必要があります。判断させることがリスクにつながりそうな場合には、管理側でロジックを作成、ユーザーに周知して、一気にやってしまうしかないでしょう。