- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-07-2016 08:30 AM
Hi All,
In our Change Management process we have 3 linear approvals:
1) Peer approval (Should be a team member double checking the work in the change request)
2) Manager approval (a team manager validating this should take place) - Sends to Assignment Group "Manager"
3) CAB approval
Right now step 1 sends a group approval request to all members of the Assignment Group. The issue with this is some groups have the Manager also as a team member, so the manager sees the peer approval request and tries to approve that. We tell them "Don't approve the peer approval if you're a manager" but they are confused.
SO: Is there a way to exclude a person from a group approval? Say, ServiceNow checks and sees you are a group manager and it skips sending you the approval request on the peer approval step?
I have no idea how to write this type of script, so your input would be helpful
Thanks,
Travis
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-07-2016 09:10 AM
Here you go
answer = [];
var gr= new GlideRecord('sys_user_grmember');
gr.addQuery('group',current.assignment_group);
gr.addQuery('user','!=',current.assignment_group.manager);
gr.query();
while(gr.next()){
answer.push(gr.getValue('user'));
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎05-26-2017 05:15 PM
could you give me a hand please workflow level approvals
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-23-2018 01:57 PM
I Have tried this, but it did not worked for me.
Here is my script:
var answer = [];
var req_for = current.request.opened_by; // Requested For value
workflow.info("Requested For:"+req_for); //Getting correct sys_id value for santosh 89d2cbd1db5813402bdc5068dc961933 with toString()
var gr= new GlideRecord('sys_user_grmember');
gr.addQuery('group',current.variables.u_assignment_group.sys_id);
workflow.info("Checking Assignment group Value"+current.variables.u_assignment_group); //Getting the correct group value from Variable - Eg. Allenton 95adf2dddb515b84f235591e5e961951
gr.query();
workflow.info(gr.getRowCount() + ' records retrieved'); // Getting no. of row count from the specifed group
while(gr.next()){
if((gr.getValue('user')) != (req_for)) // Restricting notification to Requested for, if user is already in the group
{
answer.push(gr.getValue('user').toString());
workflow.info("User value in While loop:"+gr.getValue('user').toString());
}
}
Any suggestions?
Thanks in advance.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-23-2018 02:11 PM
It worked, when i have changed the activity from Group to User.
Thanks.