首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Salesforce散装API删除运算符

Salesforce散装API删除运算符
EN

Stack Overflow用户
提问于 2019-07-10 11:07:25
回答 2查看 4.4K关注 0票数 2

在Salesforce大容量API 文档中,有如何进行插入、插入、更新和查询操作的示例。但是关于删除操作的例子是不可用的。

在大量的API文档中,它说;

Bulk API基于REST原则,并对加载或删除大量数据集进行了优化。您可以通过提交批处理异步地使用它来查询、queryAll、插入、更新、插入或删除许多记录。Salesforce在后台处理批处理。

但是,delete和queryAll文档和示例都缺失了。有人能提供一个关于删除操作的例子吗?

EN

回答 2

Stack Overflow用户

发布于 2019-07-10 11:26:27

大容量API删除的语义本质上与插入或更新相同:创建作业,将操作设置为"delete""hardDelete",然后对其发布批量记录数据。对于删除,只在批处理中包含记录Id,而不是可更新或可插入的记录内容。

由于这个原因,批量API delete的实现通常只是缩成同一底层体系结构的不同参数。参见选择的Salesforce连接器库中的示例,如

BULKAPI2.0使用的是不同的模型,但在摄取数据时,删除类似地折叠为不同的参数。见

票数 3
EN

Stack Overflow用户

发布于 2020-04-08 16:00:26

我自己也一直面临着这个问题,试图通过API集成来维护Salesforce中的事件条目。

所有这些示例都是用json编写的,但是它们应该可以轻松地分别转换为csv和xml。

与所有操作一样,从事件对象中删除需要一个作业,我一直在使用并发送到<your salesforce site>/services/async/48.0/job/的示例作业请求如下所示:

代码语言:javascript
复制
{
    "operation": "delete",
    "object": "Event",
    "concurrencyMode": "Parallel",
    "contentType": "JSON"
}

然后,服务器按照(为了简洁而省略的一些项)的方式进行答复。

代码语言:javascript
复制
{
    "apexProcessingTime": 0,
    "apiActiveProcessingTime": 0,
    "apiVersion": 48.0,
    "assignmentRuleId": null,
    "concurrencyMode": "Parallel",
    "contentType": "JSON",
    ...
    "numberRetries": 0,
    "object": "Event",
    "operation": "delete",
    "state": "Open",
    "systemModstamp": "2020-04-08T15:13:42.000+0000",
    "totalProcessingTime": 0
}

然后,按照<your salesforce>/services/async/48.0/job/<jobId>/batch/的规范创建批处理,但删除批只能包含要删除的项的Ids,例如[{"Id":"00U5I00000145XcUAI"},{"Id":"00U5I00000145XdUAI"},{"Id":"00U5I00000145XeUAI"},{"Id":"00U5I00000145XgUAI"},{"Id":"00U5I00000145XhUAI"}]

在批处理完成并失败或成功完成之后,您可以通过发送通常的请求来获取结果ids,然后从这些结果ids获得结果,从而检索结果。我没有做任何与批量API上的查询操作不同的事情。

在我的例子中,服务器响应了

代码语言:javascript
复制
[ {
  "success" : true,
  "created" : false,
  "id" : "00U5I00000145XcUAI",
  "errors" : [ ]
}, {
  "success" : true,
  "created" : false,
  "id" : "00U5I00000145XdUAI",
  "errors" : [ ]
}, {
  "success" : true,
  "created" : false,
  "id" : "00U5I00000145XeUAI",
  "errors" : [ ]
}, {
  "success" : true,
  "created" : false,
  "id" : "00U5I00000145XgUAI",
  "errors" : [ ]
}, {
  "success" : true,
  "created" : false,
  "id" : "00U5I00000145XhUAI",
  "errors" : [ ]
} ]

关于这些操作的官方指南的缺乏让我感到惊讶,但我希望有人能利用这个迟来的回答来回答你的问题。

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

https://stackoverflow.com/questions/56969396

复制
相关文章

相似问题

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