Name
sn_hr_core.hr_CreateCasesAJAXProcessor
Description
No description available
Script
var hr_CreateCasesAJAXProcessor = Class.create();
hr_CreateCasesAJAXProcessor.prototype = Object.extendsObject(global.AbstractAjaxProcessor, {
_check: function() {
var inQuery = [hr_Constants.TRACKER_REVIEW,hr_Constants.TRACKER_DRAFT];
var trackerGr = new GlideRecord("sys_execution_tracker");
trackerGr.addQuery("source_table", "sn_hr_core_case");
trackerGr.addQuery("state", "IN", inQuery);
trackerGr.query();
if (trackerGr.next() && gs.hasRole('sn_hr_core.case_writer'))
return trackerGr.getUniqueValue();
return "";
},
/**
* Start the Scripted Hierarchical Worker if one does not already exist
*/
start: function() {
var trackerId = this._check();
if (trackerId)
return trackerId;
var encodedQuery = this.getParameter("sysparm_ajax_processor_encoded_query");
var defaultValues = this.getParameter("sysparm_ajax_processor_default_values");
var haveParent = this.getParameter("sysparm_ajax_processor_have_parent");
var countProfile = this.getParameter("sysparm_ajax_processor_count_profile");
var hrSelectionType = this.getParameter("sysparm_ajax_processor_selection_type");
gs.info("encodedQuery::" + encodedQuery);
gs.info("defaultValues::" + defaultValues);
gs.info("haveParent::" + haveParent);
var worker = new GlideScriptedHierarchicalWorker();
worker.setProgressName(gs.getMessage("Creating cases"));
worker.setScriptIncludeName("sn_hr_core.hr_BulkCaseCreation");
worker.setScriptIncludeMethod("createCasesFromQuery");
worker.putMethodArg("encodedQuery", encodedQuery);
worker.putMethodArg("defaultValues", defaultValues);
worker.putMethodArg("haveParent", haveParent);
worker.putMethodArg("countProfile", countProfile);
worker.putMethodArg("hrSelectionType", hrSelectionType);
worker.setBackground(true);
worker.start();
return worker.getProgressID();
},
saveBulkCaseRequest : function(){//createCasesFromQuery
var encodedQuery = this.getParameter("sysparm_user_selection_query");
var defaultValues = this.getParameter("sysparm_default_values");
var haveParent = this.getParameter("sysparm_hasParent");
var countProfile = this.getParameter("sysparm_selected_user_count");
var hrSelectionType = this.getParameter("sysparm_user_selection_type");
var insertedCase = new sn_hr_core.hr_BulkCaseCreation().insertCasesFromQuery(encodedQuery ,defaultValues ,haveParent,countProfile,hrSelectionType);
return insertedCase;
},
type: 'hr_CreateCasesAJAXProcessor'
});
Sys ID
b65b9e490b1222001c252c7885673a6a