Assigned to field validation based on role
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-14-2024 11:30 AM - edited 09-14-2024 11:33 AM
Hello guys,
I have a requirement when a CIM task type is survey feedback and assigned to a any resolver group, then only users in that resolver group with the Survey Feedback role(resolver_group_manager) should show in assigned to field not all the users in that group should popup.
To Achieve this requirement I have created one script Include and used it in reference qualifier to filter the assigned to users based on the role but it is not working.
Script Include -
var CustomUserRoleFilter = Class.create();
CustomUserRoleFilter.prototype = {
initialize: function() {},
getFilteredUsers: function(taskType) {
if (taskType == '3'){
return 'sys_idIN' + gs.getRoledUsers('fmg_resolver_group_manager');
}
},
type: 'CustomUserRoleFilter'
};
Reference qualifier -
javascript: new CustomUserRoleFilter().getFilteredUsers(current.getValue('cim_task_type'));
15 REPLIES 15
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-15-2024 12:18 AM
Script Include -
var CustomUserRoleFilter = Class.create();
CustomUserRoleFilter.prototype = {
initialize: function() {},
getFilteredUsers: function(taskType, task) {
If(taskType == "3")
var resGroup = task.assignment_group;
if (resGroup)
var userGR = new GlideRecord('sys_user_grmember');
userGR.addQuery('group', resGroup);
userGR.query();
var userList = [];
while (userGR.next()) {
var userId = userGR.user.sys_id;
var userRoleGR = new GlideRecord('sys_user_has_role');
userRoleGR.addQuery('user', userId);
userRoleGR.addQuery('role.name', "fmg_resolver_group_manager");
userRoleGR.query();
if (userRoleGR.next()) {
userList.push(userId.toString());
}
}
return "sys_idIN" + userList.join(',');
},
type: 'CustomUserRoleFilter'
};
Reference Qualifier -
javascript: new CustomUserRoleFilter().getFilteredusers(current.getValue("cim_task_type") ,current.getValue("assignment_group"));