0

我希望使用 NodeJS 批量更新 Salesforce 记录。我一直在为大多数 Salesforce 事务使用 JSForce 库,它运行良好,但是批量更新方法似乎只批量更新具有相同信息的一组记录(https://jsforce.github.io/document/#bulk -查询)。

我正在寻找使用不同数据批量更新多条记录。

4

2 回答 2

1

遵循 Upsert 的代码

我希望我有帮助

require('dotenv').config();

    var jsforce = require('jsforce');
    var conn = new jsforce.Connection({
      loginUrl : 'https://test.salesforce.com'});
    conn.login(process.env.USER_NAME,process.env.PASSWORD, function(err, res) {


      var csvFileIn = require('fs').createReadStream("CSV_TEST.csv");



      var idExerno = {extIdField: 'BR_CNPJ__c'};

      conn.bulk.load("Account","upsert",idExerno,csvFileIn,function(err, rets) {
        if (err) { return console.error(err); }
        for (var i=0; i < rets.length; i++) {
          if (rets[i].success) {
            console.log("#" + (i+1) + " loaded successfully, id = " + rets[i].id);
          } else {
            console.log("#" + (i+1) + " error occurred, message = " + rets[i].errors.join(', '));
          }
        }
        // ...
      });

    });
于 2019-12-13T14:15:04.810 回答
0

我错了,JSForce 库确实处理批量更新。API 参考列举了可用的操作。

JSForce 库中允许这些批量操作:'insert'、'update'、'upsert'、'delete'、'hardDelete' 或 'query'

示例:conn.bulk.createJob("Account", "upsert");

文档:https ://jsforce.github.io/document/#load-from-records

API 参考:http: //jsforce.github.io/jsforce/doc/Bulk.html

于 2016-03-15T01:59:52.553 回答