首页 > 解决方案 > 由于 DUPLICATES_DETECTED 错误,即使在重复规则中使用允许设置,也无法更新 Salesforce 帐户

问题描述

我正在使用JSforce将 Salesforce 集成到我的应用程序中。当我通过 JSforce 更新功能从我的终端更新 Salesforce 帐户时,它收到DUPLICATES_DETECTED错误,因为 Salesforce 认为此帐户与另一个帐户重复。尽管我在 Salesforce 页面的重复规则设置中设置了允许,并且我们可以在其上成功编辑此帐户,但由于此错误,我无法通过 API(使用 JSforce)完成此操作。这是否可以通过 JSforce 绕过重复管理而不禁用这些规则?

   const jsforce = require('jsforce');

   /* Update to Salesforce */
   update: function (updateObject, callback) {
     this.getSObject().update(updateObject, callback);
   }

一些文档建议通过这样的 API 肥皂在请求的标头中将 allowSave 设置true,但我不使用 API 肥皂,而是使用 JSforce。

标签: error-handlingsalesforcejsforce

解决方案


您刚刚有可能在 jsforce 使用的 REST API 中执行此操作。

你可以这样做:

sfConnection.sobject("Account").create(mappedAccounts, {
    allowRecursive: true,
    headers: {
        'Sforce-Duplicate-Rule-Header': 'allowSave=true'
    }
});

这在文档中没有明确解释,但你可以从他们的代码中弄清楚。您可以在此处找到其他可能的值:https ://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/headers_duplicaterules.htm


推荐阅读