logo

NJP

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

Import · Aug 05, 2022 · article

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

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

==================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'

});

Best Regards,

Prashant

If my article helped you in any way, please mark this as helpful and make this a bookmark.

Labels:

image

View original source

https://www.servicenow.com/community/developer-articles/return-caller-s-details-in-incident-form-using-client-script-and/ta-p/2300477