如何使用NodeJS批量更新Salesforce记录?

时间:2016-03-10 21:18:36

标签: node.js salesforce bulkupdate

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

我希望批量更新包含不同数据的多条记录。

2 个答案:

答案 0 :(得分:0)

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

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

实施例: conn.bulk.createJob(“帐户”,“upsert”);

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

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

答案 1 :(得分:0)

遵循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(', '));
          }
        }
        // ...
      });

    });