gliderecord on group table

shid077
Tera Contributor

Please provide me the query or code to print the group member name and count of group name "ACME Support" which have 4 group members.

7 REPLIES 7

Peter Bodelier
Giga Sage

Hi @shid077 

 

See below:

 

var groups = ['ACME Support'];
getGroupMembers(groups);

function getGroupMembers(groups){
	var gr = new GlideRecord('sys_user_group');
	gr.addQuery('name','IN', groups);
	gr.query();
	
	while (gr.next()) {
		var groupMemberNames = [];
		var grm = new GlideRecord('sys_user_grmember');
		grm.addQuery('group', gr.sys_id);
		grm.query();
		
		while (grm.next()) {
			var groupMemberName = grm.getValue('user');
			groupMemberNames.push(groupMemberName);
		}
		var totalGroupMembers = groupMemberNames.length;
		
		gs.print('Group Members of ' + gr.getDisplayValue());
		gs.print(groupMemberNames.join(', '));
		gs.print('Total Group Members: ' + totalGroupMembers);
	}
	
}

Help others to find a correct solution by marking the appropriate response as accepted solution and helpful.

Thanks for response Peter.

 

when i run this in background script it return me

 

Script: Group Members of Billing Support
*** Script: 0d584509c323120095ccd02422d3ae5b
*** Script: Total Group Members: 1

 

in case of group member names it return sys
-id not the name of the group user.

 

can you please check and rectify your query please.

@shid077 

Use this

var groupMemberName = grm.getDisplayValue('user');

 

Hi @shid077,

 

As @psphanindrakuma indicated, you need to use getDisplayValue

 

var groups = ['ACME Support'];
getGroupMembers(groups);

function getGroupMembers(groups){
	var gr = new GlideRecord('sys_user_group');
	gr.addQuery('name','IN', groups);
	gr.query();
	
	while (gr.next()) {
		var groupMemberNames = [];
		var grm = new GlideRecord('sys_user_grmember');
		grm.addQuery('group', gr.sys_id);
		grm.query();
		
		while (grm.next()) {
			var groupMemberName = grm.getDisplayValue('user');
			groupMemberNames.push(groupMemberName);
		}
		var totalGroupMembers = groupMemberNames.length;
		
		gs.print('Group Members of ' + gr.getDisplayValue());
		gs.print(groupMemberNames.join(', '));
		gs.print('Total Group Members: ' + totalGroupMembers);
	}
	
}

 

 


Help others to find a correct solution by marking the appropriate response as accepted solution and helpful.