Shishir Srivast
Mega Sage

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'


});


View solution in original post