How to trigger an event from script include on submit of a catalog client script
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-15-2022 01:12 AM
Hi,
I need to trigger an event on Submit of a catalog client script. I am using Script Include to trigger an event. I need to send notification to the target record of the submitted catalog request.
Catalog Client Script: On Submit
var sysIdRitm = g_form.getUniqueValue();
var ajx = new GlideAjax('updateRemoveUsersDevices');
ajx.addParam('sysparm_status', status);
ajx.addParam('sysparm_sysId', sysIdRitm);
ajx.getXML(updateValues);
function updateValues(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
}
Script Include:
var sysId = this.getParameter('sysparm_sysId');
var ritmSysId = new GlideRecord('sc_req_item');
ritmSysId.getValue(sysId);
gs.info("Script Include - ritmSysId:" + ritmSysId);
gs.eventQueue('usr_updated',ritmSysId,test,'');
I am using the above code by the mails are not being triggered.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-15-2022 01:41 AM
Hi,
Try this updated scripts-
/* Catalog Client Script: On Submit */
var sysIdRitm = g_form.getUniqueValue();
var ajx = new GlideAjax('updateRemoveUsersDevices');
ajx.addParam('sysparm_status', "status");
ajx.addParam('sysparm_sysId', sysIdRitm);
ajx.getXML(updateValues);
function updateValues(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
}
/* Script Include: */
status: function (){
var sysId = this.getParameter('sysparm_sysId');
var ritmSysId = new GlideRecord('sc_req_item');
ritmSysId.getValue(sysId);
gs.info("Script Include - ritmSysId:" + ritmSysId);
gs.eventQueue('usr_updated',ritmSysId, ritmSysId.opened_by); // check field name for submitted by
}
Thanks,
Sagar Pagar
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-15-2022 02:31 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-03-2024 01:15 PM
above is almost there, but in the SI, it needs to get the record from the table as an object to pass into gs.eventQueue:
var ritmObj = new GlideRecord('sc_req_item');
ritmObj.get(sysId);
var ritmOpenedBy = ritmObj.getValue('opened_by');
gs.eventQueue('usr_updated', ritmObj, ritmOpenedBy);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-15-2022 02:57 AM
Hi,
Why to trigger email using onSubmit catalog client script?
regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader