GlideAjax on Servicenow Portal
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-04-2017 04:15 AM
Requirement : On Change of 'Requested for' variable for the catalog item , the variables value for location and manager should change according to 'Requested For'.
I have implemented OnChange client script and called script include , it is working fine on the instance.
But the script is not working on ServiceNow portal.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-04-2017 05:07 AM
Hi Charan,
Is your script include client callable? Can you also provide both the scripts?
Thanks,
Kannan

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-04-2017 05:14 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-04-2017 06:17 AM
Hi,
Synchronous calls do not work on service portal. Try using getXML() instead of getXMLWait() in the client script.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎09-04-2017 10:54 PM
Client Script : UI Type : All
var user_sys_id = g_form.getValue('requested_for');
var user_sys_id = g_user.userID;
if(user_sys_id)
{
var userinfo = new GlideAjax("ABC_UserInfo");
userinfo.addParam("sysparm_name", "getUserInfo");
userinfo.addParam("sysparm_userId",user_sys_id);
userinfo.getXML(userData);
}
function userData(serverResponse)
{
var answer = serverResponse.responseXML.documentElement.getAttribute("answer");
answer = answer.evalJSON();
g_form.setValue('emp_id',answer.emp_id);
g_form.setValue('location',answer.location);
g_form.setValue('cost_center', answer.cost_center);
g_form.setValue('manager',answer.manager);
}
Script Include : Client Callable : true
var ABC_UserInfo = Class.create();
ABC_UserInfo.prototype = Object.extendsObject(AbstractAjaxProcessor, {
getUserInfo:function(){
var obj = {};
var userId = this.getParameter('sysparm_userId');
var gr = new GlideRecord('sys_user');
gr.addQuery('sys_id',userId);
gr.query();
if(gr.next())
{
obj.emp_id = gr.employee_number.getDisplayValue();
obj.cost_center = gr.cost_center.getDisplayValue();
//obj.vendor =
obj.location = gr.location.getDisplayValue();
obj.manager= gr.manager.getDisplayValue();
// obj.start_date =
// obj.end_date =
var json = new JSON();
var answer = json.encode(obj);
return answer;
}
},
type: 'ABC_UserInfo'
});