- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-13-2017 12:58 AM
You can not do dot walking upto 2nd level using getReference() function, in that case you need to have GlideAjax Call from your catalog client script, something like this should help you.
Client Script:
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
return;
}
var sys_id = g_form.getValue('manager_field_name');
var userDetails = new GlideAjax("DisplayUserDetails");
userDetails.addParam("sysparm_name", "getUserDetails");
userDetails.addParam("sysparm_sys_id", sys_id);
userDetails.getXML(ajaxResponse);
function ajaxResponse(serverResponse) {
var answer = serverResponse.responseXML.documentElement.getAttribute("answer");
g_form.setValue('newusermanager_costcentre', answer);
}
}
Client Callable Script Include:
var DisplayUserDetails = Class.create();
DisplayUserDetails.prototype = Object.extendsObject(AbstractAjaxProcessor, {
getUserDetails : function() {
var newUserRecord = new GlideRecord('sys_user');
if(newUserRecord.get(this.getParameter('sysparm_sys_id'))){
return newUserRecord.getDisplayValue('cost_center');
}
},
type: 'DisplayUserDetails'
});