populate appovers list in custom field on RITM

Ash41
Kilo Sage

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);

 

 

 

1 ACCEPTED SOLUTION

@Ash41 

 

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.

View solution in original post

10 REPLIES 10

Jaspal Singh
Mega Patron
Mega Patron

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);