make it so the approver of an request has read access to the RITM

Brian Lancaster
Tera Sage

How can I setup and ACL on the RITM table so that the approver has Read only access?

1 ACCEPTED SOLUTION

I finally got a response from Hi.   I have made the Original ACL inactive and crated a new one with the following code.   So far it seems to be working in my dev instance.



isHisApproval();




function isHisApproval(){


  if(current.isNewRecord() || current.opened_by == gs.getUserID() || current.request.requested_for == gs.getUserID() ||


      gs.hasRole('itil')){


  return true;


  }


  var lv_app_obj = new GlideRecord('sysapproval_approver');


  lv_app_obj.addQuery('approver', gs.getUserID());


  lv_app_obj.addQuery('sysapproval', current.sys_id);


  lv_app_obj.query();


  if(lv_app_obj.next()){


  return true;


  }


  return false;


}


View solution in original post

16 REPLIES 16

dvp
Mega Sage
Mega Sage

In OOB this is the script this is on sc_req_item table



var transaction = GlideTransaction.get();


(transaction.getRequestParameter("sysparm_record_target") == "sysapproval_approver") || (typeof g_approval_form_request != "undefined" && g_approval_form_request == true);


pls check if it is there on yours, if not then create a read ACL on sc_req_item table and add the above code in script field


It is there but does not seem to be working.   When users who are approvers hover of the RITM info button they get a no preview available message in the pop-up.


I think this is something to do with sys_popup view.


Can users open the record and see the fields?


User who are the requested_for or on the watch list can see the requested item details.   When I saw g_approval_form_request I figured there was a Glide.approval... that I had to set to true but I did not see anything in the system properties that seemed to match.   I also check an OOB developers instance I have of Istanbul.