- 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
