Roles who can approve/Reject Change Request table Approval Request after clicking on Request approval.

jnfjn
Tera Contributor

Create a change Request -> Fill assignment group and assigned to field -> Request approval ->Now it goes request to all the members of the assignment group and users with what role can approve/reject this Requests based on below screenshot.

The screenshot is about Roles who have access to approver.state field to approve/reject? plz explain me who can approve/reject requests.

can u plz Explain me that 2nd Screenshot script and how it works. snc_internal role have no access to approve/reject as mentioned here. only admin & approval_admin have access.

find_real_file.png

find_real_file.png

6 REPLIES 6

jnfjn
Tera Contributor

Hi Sandeep Datta,

If you have an idea, can u plz Explain me that 2nd Screenshot script like how approval_admin is overriding snc_internal and what is other part new approvalDelegateUtil.isMyapproval(current)?

Hey jnfjn, 

This is to answer your question specifically:

 

Typically, these refer to script includes that are used to replace complex conditions.

I can find the ApprovalDelegationUtil script include in the [sys_script_include] table. It appear to be an OOTB one, so I can only imagine that it is quite common. The isMyApproval is nothing else but the function of this script include. In a nutshell it takes a record and returns true if the approval uses any of the 3 listed plugins in the code (please review it yourself as well for better understanding), otherwise, so if it doesn't use any, then return false. But well, I understand this evaluating if the request is listed as an approval that user needs to do.

Now, in this situation, since the answer has a conditional result, it follow the table of truth (T and T, T or T, etc). Here it's saying that the answer is set to true if either of the side is true. So, if the user has the 'approval_admin' role, then the second condition is not evaluated. If it is false, then the condition I explained above is evaluated. If true, then answer is definitely true, otherwise the answer is definitely set false.

 

And, that's all there is to it 🙂

I hope this is clear enough...