Salesforceへデータを転送する際、参照関係のあるフィールドには、通常 0015h00000... といったSalesforce特有のID(SFID)を指定する必要があります。
しかし、転送元のデータにSFIDが含まれていない場合、事前にSalesforceからIDをエクスポートして紐付けテーブルを用意するのは非常に手間がかかります。
そこで、TROCCOの「他オブジェクトへの関連付け」機能を使うことで、SFIDの代わりに「顧客コード」や「メールアドレス」「ユーザー名」などの値を転送時に直接紐付けることが可能です。
本記事ではその設定方法を解説します。
設定方法
今回は、「問合せ(Case)」データを転送する際に「ケース所有者(Salesforceの内部の値:OwnerId)」をSFIDではなく「ユーザー名(Username)」で紐付ける例を紹介します。
前提
転送元のデータは以下のようなデータです。
| Subject | Name |
| サービスにログインできない | tanaka hanako |
そして、以下のようなオブジェクトがSalesforce上に存在していると仮定して説明します。
▼ Case(問合せ)
| Id | OwnerId | Subject |
| 5002v00000000000 | 0052v00000000000A | ユーザー情報の変更ができない |
| 5002v00000000001 | 0052v00000000000B | ジョブがエラー終了する |
▼ User(ユーザー、Salesforceに登録されているユーザー情報)
| Id(SFID) | Username (idLookupフィールド) | Email (idLookupフィールド) | EmployeeNumber (外部ID) |
| 0052v00000000000A | tanaka hanako | hanako.tanaka@example.com | 250 |
| 0052v00000000000B | suzuki taro | taro.suzuki@example.com | 152 |
以下画像のSalesforce管理画面のpN DevがUsernameに該当します。
TROCCOでの設定手順
- 「他オブジェクトへの関連付け」を追加
転送設定画面のSTEP2の出力オプションタブ内にある、「他オブジェクトへの関連付け」で「追加」をクリックします。 - 参照フィールドの選択
参照元フィールドには、転送先オブジェクト(今回はCase)の参照関係フィールドを選択します。ここでは OwnerId(問合せ所有者) を選択します。参照先オブジェクトは、自動で抽出されます。 照合条件の設定
ここが紐付けの核心部分です。
転送元データの照合カラムは、転送元データの中で、名前やコードが入っているカラムを選択します(例:Name、EmployeeNumberなど)。
参照オブジェクトの外部IDには、参照先(Userオブジェクト)のどの項目と一致させるかを選択します。今回はidLookupフィールドである Username を指定します。この設定により、TROCCOが転送時に「転送元の Name」と「Salesforce上の Username」を突き合わせ、一致したレコードのSFIDを自動で補完してくれます。
まとめ
「他オブジェクトへの関連付け」を活用することで、面倒なSFIDの管理を行う必要はありません。
特に、外部システムから定期的にデータを同期するようなケースでは、メンテナンス性を高めるために「外部ID」や「idLookup」を活用した紐付けをおすすめします。
補足:外部IDとidLookupとは
設定の前に、紐付けに利用できる2つのフィールド属性について理解しておきましょう。
外部IDとは
Salesforce以外のシステムで管理しているID(社員番号や顧客IDなど)を保存するための項目です。
設定方法は、オブジェクトマネージャーの項目編集画面で「外部 ID」にチェックを入れることで有効化されます。
idLookupフィールドとして利用する際はユニークの制約設定もONにしてください。
idLookupフィールドとは
API経由でレコードを特定するために利用できる、Salesforceの標準項目です。
標準オブジェクトのUser内における「ユーザー名(Username)」や「メールアドレス(Email)」などは最初からidLookupフィールドとして利用が可能です。
コメント
0件のコメント
記事コメントは受け付けていません。