【发布时间】:2012-02-19 18:56:11
【问题描述】:
我只是想知道是否有其他人看到过这个,如果有,你能确认这是正确的吗?正如您所料,文档声称 10,000 是系统调用的记录限制:
Database.emptyRecycleBin(records);
不是 200。但它在 200 处抛出错误。我唯一能想到的是这个调用发生在批处理 Apex 进程中。
【问题讨论】:
标签: salesforce apex-code force.com
我只是想知道是否有其他人看到过这个,如果有,你能确认这是正确的吗?正如您所料,文档声称 10,000 是系统调用的记录限制:
Database.emptyRecycleBin(records);
不是 200。但它在 200 处抛出错误。我唯一能想到的是这个调用发生在批处理 Apex 进程中。
【问题讨论】:
标签: salesforce apex-code force.com
花了一个多星期的时间,我向销售人员支持提供了一个失败的测试用例,但该问题现在被报告为 salesforce known issue,表明它可能会在平台中得到解决。
我现在的解决方法是将调用包装在 Database.Batchable 中,批量大小为 200。
【讨论】:
这是我能找到的唯一一个关于 emptyrecyclebin() 限制为 200 的参考,我敢说你是对的
http://www.salesforce.com/us/developer/docs/api/Content/sforce_api_calls_emptyrecyclebin.htm
【讨论】:
Adam,如果您在尝试记录与此相关的案例时因为整个 Premier Support 事情而被关闭,您绝对应该升级您的案例,因为它处理不正确并且 SFDC 需要了解它。我自己也有同样的问题。
【讨论】:
SOQL For Loops 可能是解决此限制的有用选项,因为“for (Account[] accounts : [SELECT Id FROM Account WHERE IsDeleted = true ALL ROWS]”格式提供 200 个批次。
【讨论】: