- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-18-2023 11:53 PM - edited 10-18-2023 11:58 PM
Hi Team,
I want to populate Approvers list in custom field on RITM. I have wrote below BR on RITM table after- insert/update.
Users are not populating, not sure what's wrong. custom field is glide list type.
Condition: current.approval.changesTo('requested')
(function executeRule(current, previous /*null when async*/) {
var gr = new GlideRecord('sysapproval_approver');
gr.addQuery('sysapproval', current.sys_id);
gr.query();
var myString='';
if(gr.hasNext()){
while(gr.next()){
myString = myString +gr.approver+',';
gs.log(current.number+' Inside while loop Approval List ='+myString);
}
myString=myString.slice(0, -1);
gs.log(current.number+' Outside while loop Approval List ='+myString);
current.u_approvers=myString;
gs.log(current.number+' Outside while loop current.u_approvers ='+current.u_approvers);
current.update();
}
})(current, previous);
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-19-2023 03:06 AM
1) In the BR condition you can add a condition (first tab where we mentioned the condition in builder)
-> u_approvers is empty
2) please make BR to before-> insert/update
3) Remove current.update()
current.update() is fine for after insert but creates problem for after update
If my answer solved your issue, please mark my answer as ✅ Correct & 👍Helpful based on the Impact.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-19-2023 02:27 AM
Try below as a new After Update BR that runs on Approval table when State changes to Approved or Rejected. Along with the BR that you are using by Ankur
(function executeRule(current, previous /*null when async*/) {
var gr = new GlideRecord('sc_req_item');
gr.addQuery('sys_id', current.sysapproval);
gr.query();
if(gr.next()){
gr.u_approvers='';
gr.update();
}
})(current, previous);