Need to auto populate group members on a list collector variable
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-11-2024 01:25 AM
Hi All,
I need to auto populate group members on a list collector variable based on assignment group on another variable. Please assist.
Thanks in advance.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-11-2024 01:32 AM - edited 03-11-2024 01:35 AM
Hi @Muffin
Please try below,
script include:-
getMembers: function() { var user_sys_ids = ""; var grpID = this.getParameter('sysparm_gid'); var grpMembers = new GlideRecord('sys_user_grmember'); grpMembers.addQuery('group', grpID); grpMembers.query(); while (grpMembers.next()) { if(user_sys_ids=="") user_sys_ids=grpMembers.user.toString(); } else{ user_sys_ids=user_sys_ids+","+grpMembers.user.toString(); } } return JSON.stringify(user_sys_ids); }, type: 'GroupMembers' });
client script:
function onChange(control, oldValue, newValue, isLoading) { if (isLoading || newValue == '') { return; } //g_form.setVisible("eu_domain",''); var ga=new GlideAjax('GroupMembers'); ga.addParam('sysparm_name','getMembers'); ga.addParam('sysparm_gid',newValue); ga.getXML(membersList); function membersList(response){ var answer=JSON.parse(response.responseXML.documentElement.getAttribute("answer")); g_form.setValue('eu_domain',answer); } }
Please mark this as Correct or Helpful if it helps.
Please mark reply as Helpful/Correct, if applicable. Thanks!

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-14-2024 09:49 PM
Hi @Muffin
Please indicate its helpfulness by selecting "Accept as Solution" and " Helpful." This action benefits both the community and me.
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-15-2024 02:57 AM - edited 03-15-2024 02:58 AM
Hey there @Muffin
First, make sure you have a list collector variable in your form where you want to populate the group members.
Write a client-side script that triggers when the assignment group variable changes.
On the server-side, create a Script Include or Business Rule that handles the logic to retrieve the members of the assignment group.
Once the group members are retrieved, populate the list collector variable with the member values.
function populateGroupMembers() {
var assignmentGroup = g_form.getValue('assignment_group');
var ga = new GlideAjax('RetrieveGroupMembersScript');
ga.addParam('sysparm_name', 'getGroupMembers');
ga.addParam('assignment_group', assignmentGroup);
ga.getXMLAnswer(function(response) {
var members = response.split(',')
var listCollectorVariable = g_form.getControl('list_collector_variable');
listCollectorVariable.addOption(members);
});
}
g_form.observe('change', function (control, oldValue, newValue) {
if (control == 'assignment_group') {
populateGroupMembers();
}
});
If this helps kindly accept the response thanks much.
Kind Regards,
Mohamed Azarudeen Z
Developer @ KPMG
Microsoft MVP (AI Services), India