- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-27-2018 01:59 AM
Hi,
Need a solution that for client side code, synchronous AJAX methods should not be used then how we can use some other thing like script include for the requirement.
Script: function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
return;
}
var caller = g_form.getReference('caller_id');
if (caller.vip == 'true')
{
g_form.setValue('urgency','1');
g_form.setValue('impact','2');
}
else
return;
//Type appropriate comment here, and begin script below
}
Please suggest me the solution that how this can be improved by not using g_form.getReference().
I have also tried this by using UI policy but still not getting any appropriate result.
Thanks
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-27-2018 03:03 AM
Hi,
Try to add some logs,
var chkUserRole = Class.create();
chkUserRole.prototype = Object.extendsObject(AbstractAjaxProcessor, {
chkCallerUserRole: function() {
var caller = this.getParameter('sysparm_caller');
gs.addInfoMessage('caller_sys_id...'+caller);
var vip = gs.getUser().getUserByID(caller).getRecord().getValue('vip');
gs.addInfoMessage('vip...'+vip);
return vip;
}
});
Client script as below,
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
//return;
}
//Type appropriate comment here, and begin script below
var ga = new GlideAjax('chkUserRole');
ga.addParam('sysparm_name','chkCallerUserRole');
ga.addParam('sysparm_caller',g_form.getValue('caller_id'));
ga.getXML(HelloWorldParse);
function HelloWorldParse(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
g_form.addInfoMessage('answer...'+answer);
if(answer=='1')
{
g_form.setValue('impact','2');
g_form.setValue('urgency','1');
}
}
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-27-2018 03:24 AM
Hi Omkar,
Created a new script include also. but nothing.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-27-2018 03:19 AM
You missed Bracess '{}' after if statement.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-27-2018 02:47 AM
Hi,
Modify your script include as below and client collable should be checked,
var chkUserRole = Class.create();
chkUserRole.prototype = Object.extendsObject(AbstractAjaxProcessor, {
chkCallerUserRole: function() {
var caller = this.getParameter('sysparm_caller');
return gs.getUser().getUserByID(caller).getRecord().getValue('vip');
}
});
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-27-2018 02:55 AM
Hello shweta,
Sorry but nothing happened.
thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-27-2018 02:58 AM
Modify client script if part,
if(answer=='1')
g_form.setValue('impact','2');
g_form.setValue('urgency','1');
}
