The CreatorCon Call for Content is officially open! Get started here.

Request Item show Approvers in list view

carlosrlara
Mega Expert

Currently, the only field on request items that shows approval information is stage and only tells you the status. I have an ask to show who the approver is on the list view.

I believe the only way to accomplish this is to copy the approver on the sys_approval table to the sc_req_item table. I created a field on the requested item field as Approval For(u_approval_for)

Business Rule condition. There are no actions, as i have used advanced

find_real_file.png

Code

(function executeRule(current, previous /*null when async*/) {

var requestitem = new GlideRecord('sc_req_item');

requestitem.get(current.document_id);

if(requestitem.isValidRecord()) {

  sc_req_item.u_approval_for =   current.approver + ',' + sc_req_item.u_approval_for;

requestitem.update();

}

})(current, previous);

1 ACCEPTED SOLUTION

Harel, i fixed my problem


i switched my approval for field to be a reference field to the user table.


i modified the script to be


requestitem.u_approval_for =   current.approver ;



and now the approval for field displays the approver


View solution in original post

11 REPLIES 11

and...?


I took your code and tried it in my instance and it worked - i could populate a field with the approver's sys_id.


What happened on your form?



btw, sc_req_item.u_approval_for; should also be requestitem.u_approval_for I think.


harel


this is my current script: where should i make the change



(function executeRule(current, previous /*null when async*/) {


var requestitem = new GlideRecord('sc_req_item');


requestitem.get(current.document_id);


if(requestitem.isValidRecord()) {


  requestitem.u_approval_for =   current.approver + ',' + sc_req_item.u_approval_for; - i think you might want me to make the change here


requestitem.update();


}



})(current, previous);


Harel,



i tried it and i only also retrieved the sys_id, would i be able to change to the users name by putting display value?



find_real_file.png


Harel, i fixed my problem


i switched my approval for field to be a reference field to the user table.


i modified the script to be


requestitem.u_approval_for =   current.approver ;



and now the approval for field displays the approver


Yes, of-course. I did not realize that you were not using a reference field.


If you want to use a string field, use getDisplayValue().



harel