logo

NJP

How to Return Caller's Details in Incident form using Client Script and Script Include

Import · Aug 01, 2022 · article

I have explained how to return multiple values from the script include and pass it to the client side.

==================CLIENT SCRIPT====================

function onChange(control, oldValue, newValue, isLoading, isTemplate) {// if (isLoading || newValue === '') {// return;

// }

//Type appropriate comment here, and begin script below var ga1 = new GlideAjax('FetchUserDetails'); ga1.addParam('sysparm_name', 'getData'); ga1.addParam('sysparm_user', newValue);

ga1.getXMLAnswer(setDetails);

function setDetails(response) { var pVal = JSON.parse(response); g_form.setValue('u_manager', pVal.manager); g_form.setValue('u_user_s_location', pVal.location); g_form.setValue('u_mobile_number', pVal.mobile_number); g_form.setValue('u_username', pVal.username); g_form.setValue('u_email', pVal.email); }

}

==================SCRIPT INCLUDE====================

var FetchUserDetails = Class.create();

FetchUserDetails.prototype = Object.extendsObject(AbstractAjaxProcessor, {

getData: function() { var user = this.getParameter('sysparm_user');

var obj = {};

var usr = new GlideRecord('sys_user'); usr.addQuery('sys_id', user); usr.query(); if (usr.next()) { obj.manager = usr.manager.getDisplayValue(); obj.location = usr.location.getDisplayValue(); obj.mobile_number = usr.mobile_phone.getDisplayValue(); obj.username = usr.user_name.getDisplayValue(); obj.email = usr.email.getDisplayValue(); } return JSON.stringify(obj);

},

type: 'FetchUserDetails'

});

If you have any feedback related to the scripting part, please write it in the comment box.

Labels:

image

View original source

https://www.servicenow.com/community/developer-articles/how-to-return-caller-s-details-in-incident-form-using-client/ta-p/2302073