Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

How to make "Assign to" dependent on "Assignment Group" in a record producer?

Cory Miller1
Kilo Contributor

We want to limit the user list under "Assigned to" on a record producer based on the selected "Assignment Group"...

20 REPLIES 20

MrMuhammad
Giga Sage

Hi Cory,

You will need to apply reference qualifier on the assigned to variable. Please have a look at below thread for reference script.

https://community.servicenow.com/community?id=community_question&sys_id=65d147a9db98dbc01dcaf3231f96...

Regards,

Muhammad

Regards,
Muhammad

Hello Muhammad!

Thank you for your quick response!

However, I tried it and it is not working for me.

Here is what I have:

Client Script: Name "refqualassignedto"

function refqualassignedto() {
var group = current.variables.assignment_group; // your assignment group variable name
var user_array = [];
if (group != '') {
var getMembers = new GlideRecord('sys_user_grmember');
getMembers.addQuery('group', group);
getMembers.query();
while (getMembers.next()) {
user_array.push(getMembers.getValue('user'));
}
return 'sys_idIN' + user_array.toString();
} else {
return 'active=true';
}
}

Producer.assigned_to variable Type specifications:

find_real_file.png

I should add that I am coding in a scoped app, if that makes a difference?

 

Hi @Cory Miller

Please add below variable attribute in assigned_to variable. it is mandatory to call script include and send data to server.

ref_qual_elements=<assignment_group_variable_name_here>

find_real_file.png

Regards,

Muhammad

Regards,
Muhammad

Hello,

I added the ref_qual and tried all these changes that are commented out.

I even tried hard coding the assignment group with a sys_id and still nothing.

function refqualassignedto() {
// var group = current.variables.assignment_group; // your assignment group variable name
// var group = current.assignment_group; // your assignment group variable name
// var group = producer.variables.assignment_group; // your assignment group variable name
// var group = producer.assignment_group; // your assignment group variable name
var group = '6a0059d42f2130103d48bcb62799b6b6';
var user_array = [];
if (group != '') {
var getMembers = new GlideRecord('sys_user_grmember');
getMembers.addQuery('group', group);
getMembers.query();
while (getMembers.next()) {
user_array.push(getMembers.getValue('user'));
}
return 'sys_idIN' + user_array.toString();
} else {
return 'active=true';
}
}