Name
global.AssociateChildToParentCase
Description
No description available
Script
var AssociateChildToParentCase = Class.create();
AssociateChildToParentCase.prototype = Object.extendsObject(global.AbstractAjaxProcessor, {
getURL: function(){
var parentId = this.getParameter("sysparm_id");
var addToTable = this.getParameter("sysparm_add_to");
var uiPage = this.getParameter("sysparm_page");
return this._getURL(uiPage,parentId, addToTable);
},
_getURL: function(uiPage,parentId, addToTable){
this.removeUserFilter();
var pMgr = new GlidePluginManager();
var query = "parentISEMPTY^sys_id!="+parentId+"^stateNOT IN6,3,7";
if (pMgr.isActive(CSMBaseConstants.MAJOR_ISSUE_MANAGEMENT_PLUGIN))
query += "^major_case_state=^ORmajor_case_state=proposed^ORmajor_case_state=rejected^ORmajor_case_state=cancelled";
var url = new GlideURL(uiPage);
url.set("sysparm_crSysId", parentId);
url.set("sysparm_view", "add_child_to_case");
url.set("sysparm_add_to", addToTable);
url.set("sysparm_stack", "no");
url.set("sysparm_table", CSMBaseConstants.CASE_TABLE);
url.set("sysparm_parent_class", CSMBaseConstants.CASE_TABLE);
url.set("sysparm_query",query);
return url;
},
addSelected:function(){
var non_updated_count = 0;
var msg;
var parentId = this.getParameter("sysparm_id");
var selSysId = this.getParameter("sysparm_selCases");
var gr = new GlideRecord(CSMBaseConstants.CASE_TABLE);
gr.addQuery('sys_id','IN',selSysId);
gr.query();
while(gr.next()){
var updateResult;
gr.setValue('parent', parentId);
if(gr.canWrite()){
updateResult = gr.update();
}
if(!updateResult)
non_updated_count++;
}
var total = gr.getRowCount();
if(non_updated_count == total)
msg = gs.getMessage('No');
else if(non_updated_count == 0)
msg = gs.getMessage('All ({0})',total);
else {
var msgParams = [];
msgParams.push(total - non_updated_count);
msgParams.push(total);
msg = gs.getMessage('{0} of {1}',msgParams);
}
return msg;
},
type: 'AssociateChildToParentCase'
});
Sys ID
8a47ddb13b63130037556b4ee3efc485