此触发器从流程实例对象中提取值,将它们存储在列表中,并更新自定义对象上的字段。问题是,为了查看该值,用户必须更新并保存该记录。通常我会在Process Instance对象上添加一个'After Update'触发器,但Salesforce不允许这样做。从Salesforce中的活动流程实例对象更新自定义对象
任何帮助或建议,将不胜感激。在Service_Request__c(更新之前)
触发update_Provisioner {
for(Service_Request__c sr:Trigger.new){
List <ProcessInstance> pi = [SELECT Id, CreatedDate from ProcessInstance where TargetObjectId = :sr.Id ORDER BY CreatedDate DESC limit 1];
List <ProcessInstanceStep> op = [SELECT Id, StepStatus, ActorId, OriginalActorId, CreatedDate FROM ProcessInstanceStep where ProcessInstanceId = :pi[0].Id ORDER BY CreatedDate DESC limit 1];
if(op.size()>0){
//System.debug('Hello'+sr.Provisioner__c+' '+op[0].StepStatus + ' '+ op[0].ActorId + ' ' +op[0].OriginalActorId + ' '+ op[0].CreatedDate);
sr.Provisioner__c = op[0].ActorId;
}
}
}
而不是触发这样做,你尝试过直接在多数民众赞成发起这个批准过程添加字段更新? –