大概这种应用场景不多,文档里竟然没有找到介绍。
终于在谷歌老师的帮助下,获得了如下神码(经过我的二次整理优化):
List<Approval.ProcessWorkitemRequest> requestList = new List<Approval.ProcessWorkitemRequest> ();
for (ProcessInstanceWorkitem workItem : [
SELECT Id
FROM ProcessInstanceWorkitem
WHERE ProcessInstance.TargetObjectId IN :idListToRecallList
AND ProcessInstance.Status = 'Pending'
]) {
Approval.ProcessWorkitemRequest workItemRequest = new Approval.ProcessWorkitemRequest();
workItemRequest.setAction('Removed');
workItemRequest.setWorkItemId(workItem.Id);
requestList.add(workItemRequest);
}
List<Approval.ProcessResult> result = Approval.process(requestList);
本文介绍了一种在Salesforce中批量撤销待处理流程实例的方法。通过Apex代码,可以遍历特定对象的所有待处理工作项,并将它们的状态设置为移除。此方法适用于需要快速清理大量挂起流程的情况。
1024

被折叠的 条评论
为什么被折叠?



