tyoshikawa1106のブログ

- Force.com Developer Blog -

SFDC:重複登録された顧客情報をマージするときの流れ

Salesforceでは顧客情報を取引先と取引先責任者に登録して管理を行います。データ登録の業務中にうっかり同じ顧客の情報を重複して登録してしまったり、Force.comサイトなど外部に公開されたWebページから顧客が複数回登録するといったケースがあると思います。
f:id:tyoshikawa1106:20170413003355p:plain

f:id:tyoshikawa1106:20170413003723p:plain


そういったデータはSalesforceのマージ機能を使って1つにまとめることができます。
f:id:tyoshikawa1106:20170413004052p:plain


マージ機能には検索機能も用意されているため対象レコードを簡単に選択できるようになっています。
f:id:tyoshikawa1106:20170413004151p:plain


次のように基準となるレコードの選択と残したい値を個別に選ぶことが可能です。
f:id:tyoshikawa1106:20170413004341p:plain


マージを実行すると元に戻せないので注意して実行する必要があります。
f:id:tyoshikawa1106:20170413004424p:plain


実行すると複数あったレコードが1つにまとまります。
f:id:tyoshikawa1106:20170413004602p:plain


それぞれに紐付いていた取引先責任者などの関連リストの情報も引き継ぐことができます。
f:id:tyoshikawa1106:20170413004753p:plain


取引先責任者関連リストから取引先責任者のマージも同様の手順で実行できます。
f:id:tyoshikawa1106:20170413004903p:plain

f:id:tyoshikawa1106:20170413005004p:plain


ポータルユーザの有無も表示されます。Community Cloudを利用している組織では重宝すると思います。
f:id:tyoshikawa1106:20170413005045p:plain


これで複数登録されていた取引先責任者も1つにまとめることができました。
f:id:tyoshikawa1106:20170413005131p:plain:w300


取引先責任者のマージは同じ取引先に存在しているレコードが対象となります。そのため取引先のマージ→取引先責任者のマージという手順で進める必要があります。


取引先のときと同様でケースなどの関連先情報も引き継ぐことができます。
f:id:tyoshikawa1106:20170413005304p:plain


マージ処理を行うと最終更新日が更新されます。処理としてはUPDATEとDELETEが実行されるためです。Apexトリガなどが用意されている組織ではそのあたりを意識する必要があります。


また項目履歴の管理機能を利用している場合、マージされた履歴が残るようになっていました。


最後に重複データの洗い出しはサマリレポートで抽出するのが便利だと思います。
f:id:tyoshikawa1106:20170413003957p:plain


Salesforceのマージ機能をつかえば比較的簡単に組織のデータキレイにすることができます。マージ機能をつかえばあとからデータをキレイにできますが基本的には重複データは残さない仕組みを用意するのがいいと思います。例えば名前項目+メールアドレスを組み合わせた一意の外部ID項目を用意してUPSERT処理で登録するようにすれば重複データ登録を回避できると思います。


マージ機能ですが現時点ではClassicページでの利用のみサポートされていたと思います。LEXを利用している場合は一時的に戻してからの利用となります。

関連記事