Salesforce setNextApproverIds()不工作
我已经创建了一个审批流程,并且正在从自定义按钮后面的Apex代码启动它。这很好,但我面临的问题是无法从Apex代码设置审批人。它始终采用审批流程中设置的审批人 这是我的密码:Salesforce setNextApproverIds()不工作,salesforce,apex,sfdc,Salesforce,Apex,Sfdc,我已经创建了一个审批流程,并且正在从自定义按钮后面的Apex代码启动它。这很好,但我面临的问题是无法从Apex代码设置审批人。它始终采用审批流程中设置的审批人 这是我的密码: Approval.ProcessSubmitRequest req = new Approval.ProcessSubmitRequest(); req.setComments('Submitted for approval. Please approve. Source:ApexClass');
Approval.ProcessSubmitRequest req = new Approval.ProcessSubmitRequest();
req.setComments('Submitted for approval. Please approve. Source:ApexClass');
req.setObjectId(dcr.Id);
req.setNextApproverIds(new Id[] {'0057E000001dn5T'}); // This is the id of a user
Approval.ProcessResult result = Approval.process(req);
这会提交记录以供审批,但会将其发送给审批流程中设置的审批人,而不会发送给代码中设置了id为“0057E000001dn5T”的用户
我还尝试更改上面代码中的以下行
req.setNextApproverIds(new Id[] {'0057E000001dn5T'});
到
及
……但什么都没用
那么,如何从Apex代码设置审批人?任何帮助都将不胜感激
List<Id> approverIdList = new List<Id>();
Id approverId = [SELECT DCR_Send_to_Approver_AGN__c FROM User
WHERE Id = :UserInfo.getUserId()].DCR_Send_to_Approver_AGN__c;
approverIdList.add(approverId);
req.setNextApproverIds(approverIdList);
list<string> approverIdList = new list<string>();
group g = [SELECT (select userOrGroupId from groupMembers) FROM group
WHERE name= 'testUserGroup'];
for (GroupMember gm : g.groupMembers) {
approverIdList.add(gm.userOrGroupId);
}
req.setNextApproverIds(approverIdList);