首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jsforce大容量api选项之间的差异

jsforce大容量api选项之间的差异
EN

Stack Overflow用户
提问于 2018-06-05 21:07:33
回答 1查看 1.2K关注 0票数 1

我使用jsforce来使用大容量api访问salesforce。它有两种更新和删除记录的方法。一种是使用普通的批量api,这意味着创建作业和批处理:

代码语言:javascript
复制
var job = conn.bulk.createJob("Account", "delete");
var batch = job.createBatch();
var accounts = getAccountsByDate(jsforce.Date.TODAY);
batch.execute(accounts);

batch.on('response', function(rets) {
    // do things
});

另一种方式是这样的“查询”接口:

代码语言:javascript
复制
conn.sobject('Account')
    .find({ CreatedDate: jsforce.Date.TODAY })
    .destroy(function(err, rets) {
        // do things
    });

第二种方式似乎更容易,但我无法让它一次更新或删除超过10,000条记录,这似乎是一个salesforce api 批次尺寸限制。请注意,在这种情况下,使用来自maxFetchjsforce属性似乎没有任何效果。

那么,假设查询样式接口只创建一个批处理是安全的吗?jsforce文档在这一点上还不清楚。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-08 05:10:46

当前,bulk.load()方法在JSforce大容量api中生成一个带有一个批处理的作业,因此将适用每批10,000的限制。在使用内部使用bulk.load()的查找和销毁接口时也是如此。为了避免这种限制,您可以通过bulk.createJob()创建一个作业,并通过job.createBatch()创建几个批,然后将记录分派到这些批中删除,这样每个记录都不会超过限制。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50708942

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档