Client Script
function onChange(control, oldValue, newValue, isLoading) { if (newValue == '') { return; } setRequestedForInfo(newValue); } function setRequestedForInfo(newValue){ var ga = new GlideAjax('global.Workingcode_ServiceCatalog'); ga.addParam('sysparm_name', 'getUserDetails'); ga.addParam('sysparm_userid', newValue); ga.getXMLAnswer(function(answer){ var user_data = JSON.parse(answer); g_form.setValue("u_email", user_data.email); g_form.setValue("u_manager", user_data.manager); g_form.setValue("rfs_department", user_data.department); g_form.setValue("u_phone", user_data.phone); g_form.setValue("u_first_name", user_data.first_name); }); }
Script Include
getUserDetails: function() { var result = {}; var user_id = this.getParameter('sysparm_userid'); var gr_user = new GlideRecord("sys_user"); if(gr_user.get(user_id)){ result.department = gr_user.department.toString(); result.manager = gr_user.manager.toString(); result.email = gr_user.email.toString(); result.phone = gr_user.phone.toString(); result.first_name = gr_user.first_name.toString(); return new JSON().encode(result); },
GlideAjax to auto populate User details in catalog item ServiceNow
Working Code Edited question November 25, 2023