- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-11-2018 05:44 PM
Hello All.
If "Request by" user is the member of the Approvers group (Assignment Group) we should exclude this user from the Approvers list. To exclude "Requested by" user from the Approvers list I'm using the code bellow. Debugging statement [workflow.info('APPROVER = ' + approvers.user.toString());] recording in the log all approvers correctly. In simple words the code is working. However, retrieved approvers are not displayed on the Approvers list on the form.
Please, any suggestions for me? Thank you in advance for your help.
SCRIPT:
answer = [];
var approvers = new GlideRecord('sys_user_grmember');
approvers.addQuery('group', current.assignment_group);
approvers.query();
while(approvers.next()) {
if(approvers.user.toString() != current.requested_by.toString()) {
workflow.info('APPROVER = ' + approvers.user.toString());
answer.push(approvers.user.toString());
}
}
Approvers are not displayed on the list:
Even the log says approvers are retrieved correctly:
Solved! Go to Solution.
- Labels:
-
Team Development

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-11-2018 07:38 PM
Hi,
I'm assuming that you are using "Approval group" activity and not "Approval User" activity in the workflow. If yes, then switch it to the "Approval user" activity and the script should work fine.
Thanks,
Pradeep Sharma
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-29-2019 02:35 AM
Hi Pradeep,
I am using approver user activity only , also I am getting only one approver instead of getting n number.
FYR
Based on the selection of country in catalog form, approver should set. Here Smit Ruan only getting approval and not Jenine.
Attaching script FYR
var answer = [];
if(current.variables.add_market == 'Yes'){
var list = current.variables.other_markets.toString();
workflow.info("othermarkets"+current.variables.other_markets);
var a = list.split(',');
workflow.info("marketsplit"+a);
var i;
var ctry;
for (i = 0; i < a.length; i++) {
workflow.info("marketi"+a[i]);
var grc = new GlideRecord('core_country');
grc.addQuery('sys_id', a[i]);
grc.query();
while(grc.next()){
ctry = grc.name;
workflow.info("countryname"+ ctry);
}
var gr1 = new GlideRecord('u_global_medical_approvers');
gr1.addQuery('u_country', ctry);
gr1.addQuery('u_active',true);
gr1.query();
while(gr1.next())
{
workflow.info("countryname1"+ ctry);
workflow.info("countryuser"+ gr1.u_user);
answer.push(gr1.u_user);
}
}
}