Reference Qualifier
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-02-2024 10:54 PM
Hi All,
I am trying to show up only members of a particular group to be selected in the reference variable in portal
Below is script include I'm calling from Reference qual but it is not working. Have tried passing the sys_id of the group
Please help
Script Include
getGroupMembers: function(groupID) {
if (groupID == "")
return '';
var result = '';
var userIDs = [];
var userGR = new GlideRecord('sys_user_grmember');
userGR.addQuery("group", groupID);
userGR.query();
while (userGR.next()) {
userIDs.push(userGR.user.toString());
}
result = 'sys_idIN' + userIDs.join(',');
return result;
},
Reference qual = javascript: 'sys_idIN'+new global.HCFUtils().getGroupMembers(current);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-02-2024 11:15 PM
Try this as client callable script include:
var HCFUtils = Class.create();
HCFUtils.prototype = {
initialize: function() {},
getGroupMembers: function(groupID) {
if (groupID == "")
return '';
var userIDs = [];
var userGR = new GlideRecord('sys_user_grmember');
userGR.addQuery('group', groupID);
userGR.query();
while (userGR.next()) {
userIDs.push(userGR.user.toString());
}
return userIDs.join(',');
},
type: 'HCFUtils'
};
Create a GlideAjax Client script:
var ga = new GlideAjax('HCFUtils');
ga.addParam('sys_id', g_form.getValue('group')); // Assuming you have a 'group' field in your form
ga.getXMLAnswer(function(response) {
var userIDs = response.responseXML.documentElement.getAttribute("answer");
g_form.setValue('your_reference_field', 'sys_idIN' + userIDs);
});
And make this your reference qualifier:
javascript: 'sys_idIN' + new global.HCFUtils().getGroupMembers(current.group);
Validate on all scripts if your fields are correctly in there.
Please mark any helpful or correct solutions as such. That helps others find their solutions.
Mark