- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2023 05:59 AM
Good Day everyone,
i created a catalog item that is used for internal changes to an employee.
In my form i have a reference field linked to the sys_user table and when you choose a person their information will get populated into single text fields via a client script.
What is happening, the person Manager (linked to the sys_user table) and their Location(linked to the cmn_location table) is only coming back with the Sys_ID as seen below:
The script i am using is the following:
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2023 07:08 AM
I was able to figure it out,
here is the updated code for anyone to use.....

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2023 07:38 AM
Try this:
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
var userDetails = g_form.getReference('preferred_name', myFunc);
function myFunc(userDetails){
var loc = new GlideRecord('cmn_location');
loc.addQuery('sys_id', userDetails.location);
loc.query(getLocation);
function getLocation(loc){
loc.next();
var man = new GlideRecord('sys_user');
man.addQuery('sys_id', userDetails.manager);
man.query(getManager);
function getManager(man){
man.next();
g_form.setValue('current_title', userDetails.title);
g_form.setValue('current_persona', userDetails.u_persona);
g_form.setValue('current_share_team', userDetails.u_share_team);
g_form.setValue('current_department', userDetails.department);
g_form.setValue('current_office_workstation_id', userDetails.u_desk_location);
g_form.setValue('current_location', userDetails.location, loc.name);
g_form.setValue('current_phone_number', userDetails.phone);
g_form.setValue('current_manager', userDetails.manager, man.u_preferred_name);
}
}
}
}
Help others to find a correct solution by marking the appropriate response as accepted solution and helpful.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2023 06:06 AM
You need to set both DisplayValue as Value
Help others to find a correct solution by marking the appropriate response as accepted solution and helpful.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2023 06:14 AM
where in the code ?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2023 06:17 AM
g_form.setValue('current_location', userDetails.location);
g_form.setDisplayValue('current_location', <<location display>>);
g_form.setValue('current_manager', userDetails.manager);
g_form.setDisplayValue('current_manager', <<manager display>>);
Help others to find a correct solution by marking the appropriate response as accepted solution and helpful.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2023 06:40 AM
Sorry this didnt work