How to display the VIP icon beside field "Requested for" on ritm form
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-31-2023 04:26 AM
My instance already have one on change client script for incident table in order to display the VIP icon beside field "Caller" howvever when i am trying to utilize the same script for the sc_req_item table as on load client script then that does not work,
Please suggest the script that i can use for RITM form.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-31-2023 05:53 AM
I think the "onChange" event is used for the Incident form, but for the RITM form, you should use the "onLoad" event.
can you please share the script?
Please, don't forget to mark my answer as correct if it solves your issue or mark it as helpful if it is relevant for you!
Regards,
Tushar
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-31-2023 06:02 AM
Below is the client script that i am using
function onLoad() {
//Type appropriate comment here, and begin script below
var callerLabel = $('label.sc_req_item.request.requested_for');
var callerField = $('sys_display.sc_req_item.request.requested_for');
if (!callerLabel || !callerField)
return;
var number = g_form.getValue('number');
var ga = new GlideAjax("isVIP");
ga.addParam("sysparm_name", "vip");
ga.addParam("sysparm_numnber", number);
ga.getXML(vipCallBack);
}
function vipCallBack(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
var callerLabel = $('label.sc_req_item.request.requested_for').down('label');
var callerField = $('sys_display..sc_req_item.request.requested_for');
if (!callerLabel || !callerField)
return;
//check for VIP status
if (answer == 'true') {
var bgPosition = "95% 55%";
if (document.documentElement.getAttribute('data-doctype') == 'true')
bgPosition = "5% 45%";
callerLabel.setStyle({backgroundImage: "url(images/icons/vip.gif)", backgroundRepeat: "no-repeat", backgroundPosition: bgPosition, paddingLeft: '30px' });
//set callerField color
callerField.setStyle({color: "red"});
} else {
callerLabel.setStyle({backgroundImage: ""});
callerField.setStyle({color: ""});
}
}
Below is the script include i am using
var isVIP = Class.create();
isVIP.prototype = Object.extendsObject(AbstractAjaxProcessor, {
vip: function(){
gs.addInfoMessage('test1');
var number = this.getParameter('sysparm_numnber');
var gr = new GlideRecord("sc_req_item");
gr.addQuery("number", number);
gr.query();
if (gr.next()) {
gs.addInfoMessage(number);
gs.addInfoMessage(gr.request.requested_for.vip);
return gr.request.requested_for.vip;
}
gs.addInfoMessage('test2');
},
type: 'isVIP'
});