FindDuplicatesByIds クラス
ルールに基づいて、重複レコードの検索を実行します。入力は ID の配列です。各 ID は、重複を検索するレコードを示します。入力 ID に対応するオブジェクト種別に適用される有効な重複ルールに基づき、重複が検出されます。
名前空間
FindDuplicatesByIds のメソッド
FindDuplicatesByIds のメソッドは次のとおりです。
findDuplicatesByIds(ids)
使用方法
オブジェクトに関連付けられた有効な重複ルールを、レコード ID が表すレコードに適用するには、FindDuplicatesByIds を使用します。
FindDuplicatesByIds は、入力レコード ID と同じ種別のオブジェクトの重複ルールを使用します。たとえば、レコード ID が取引先を表す場合、FindDuplicatesByIds は Account オブジェクトに関連付けられた重複ルールを使用します。
- 入力
-
- 入力配列内のすべてのレコード ID は同じオブジェクト種別である必要があり、その種別は重複ルールをサポートするオブジェクト種別に対応する必要があります。
- 入力配列は 50 要素までに制限されます。この制限を超えると、例外が発生し、「Configuration error: The number of records to check is greater than the permitted batch size.」 (設定エラー: 確認するレコード数が、許容されているバッチサイズを超えています。) というメッセージが表示されます。
- 出力
-
- FindDuplicatesByIds の出力は、入力配列と同じ要素数と順序のオブジェクトの配列です。出力オブジェクトでは、重複レコードのレコード ID がカプセル化されます。出力オブジェクトには重複レコードからの値も含まれます。
- 各要素に DuplicateResult オブジェクトの配列が含まれます。FindDuplicatesByIds で重複が検出されなかった場合、DuplicateResult の duplicateRule 項目には、FindDuplicatesByIds が適用した重複ルールの名前が含まれますが、matchResults 配列は空です。
例
1Account acct = new Account(name='Salesforce');
2insert acct;
3
4List<Id> idList = new List<Id>();
5idList.add(acct.id);
6
7if (Datacloud.FindDuplicatesByIds.findDuplicatesByIds(idList).size() > 0) {
8System.debug('Found duplicates');
9}署名
public static List<Datacloud.FindDuplicatesResult> findDuplicatesByIds(List<Id> ids)