- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-05-2022 10:23 PM
Hello,
I want to check if the RITM opened by field user is a part of "HR Intergration Group" or not.
I am using this if script in workflow, but it is showing error .
answer = ifScript();
function ifScript() {
var name = current.opened_by;
var grp = "05bc6e8fdb14401025c85a35dc9619b0"; //HR integration group sys_id
if (name.isMemberOf(grp)) {
return 'yes';
}
return 'no';
}
The error is as follows:
Cannot find function isMemberOf in object.
Please help.
Solved! Go to Solution.
- Labels:
-
Workflow
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-05-2022 11:03 PM
Use this sample script to design your script , it will work
var user = 'admin';
var group = "Hardware";
if (gs.getUser().getUserByID(user).isMemberOf(group)){
gs.log( gr.user_name + " is a member of " + group);
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-05-2022 11:03 PM
Use this sample script to design your script , it will work
var user = 'admin';
var group = "Hardware";
if (gs.getUser().getUserByID(user).isMemberOf(group)){
gs.log( gr.user_name + " is a member of " + group);
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-05-2022 11:12 PM
Hi
Try this:
var userGr = current.opened_by.getRefRecord();
var newUser = gs.getUser().getUserByID(userGr.user_name))
if(newUser.isMemberOf('<Group NAME goes here>')) {
//Your required code goes here
//Remark: It is not recommended to Hardcode sys_ids
}
Also, check ServiceNow link on using Get a user object methods.
Please mark my answer as correct if this solves your issues!
If it helped you in any way then please mark helpful!
Thanks and regards,
Kartik
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-05-2022 11:48 PM
this will work
answer = ifScript();
function ifScript() {
var name = current.opened_by;
var grp = "05bc6e8fdb14401025c85a35dc9619b0"; //HR integration group sys_id
if (gs.getUser().getUserByID(name).isMemberOf(grp)) {
return 'yes';
}
return 'no';
}
Regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-05-2022 11:53 PM
I created a if script using Glide Record() and it is now working.
var gr = new GlideRecord('sys_user_grmember');
gr.addQuery('user', current.opened_by);
gr.addQuery('group', '05bc6e8fdb14401025c85a35dc9619b0'); of group.
gr.query();
if(gr.next()){
var answer = "yes";
ifScript();
gs.log(current.number+"User is Member of Group!");
}
else{
answer = "no";
gs.log(current.number+"User is Not a Member of Group!");
}
function ifScript(){
if(answer == 'yes'){
return 'yes';
}
else{
return 'no';
}
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-06-2022 12:11 AM
Hi
Is the issue still not resolved?
If not then try the code provided by me earlier in your ifScript function:
var userGr = current.opened_by.getRefRecord();
var newUser = gs.getUser().getUserByID(userGr.user_name))
if(newUser.isMemberOf('<Group NAME goes here>')) {
//Your required code goes here
//Remark: It is not recommended to Hardcode sys_ids
}
Please mark my answer as correct if this solves your issues!
If it helped you in any way then please mark helpful!
Thanks and regards,
Kartik