Name
sn_playbook_exp.CancelProcessesAjax
Description
Cancel a batch of processes
Script
var CancelProcessesAjax = Class.create();
CancelProcessesAjax.prototype = Object.extendsObject(global.AbstractAjaxProcessor, {
cancelProcessess: function() {
var selectedSysIds = this.getParameter('sysparm_selectedProcesses').split(',');
var reason = this.getParameter('sysparm_reason');
selectedSysIds.forEach(function cancelProcess(sysID) {
var process = new GlideRecord('sys_pd_context');
process.get(sysID);
var parent = new GlideRecord(process.getValue("input_table"));
var cancellableState = process.getValue('state') === 'QUEUED' || process.getValue('state') === 'IN_PROGRESS';
if (cancellableState && parent.get(process.getValue("input_record")) && parent.canWrite()) {
sn_playbook.PlaybookExperience.cancelPlaybook(process, reason);
}
});
},
type: 'CancelProcessesAjax'
});
Sys ID
0809f57a434661104e75fcc5fbb8f2a3