Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var OutageRecord = Class.create();
- OutageRecord.prototype = Object.extendsObject(AbstractAjaxProcessor, {
- createOutagefn: function(incPri,ci_array,incId){
- var pType = '';
- var bs_array = [];
- var queryString = "parent.sys_class_name=cmdb_ci_service^ORchild.sys_class_name=cmdb_ci_service";
- //Outage Type Based off Incident Priority
- if(incPri == 1){
- pType = 'outage';
- }
- else if(incPri == 2){
- pType = 'degradation';
- }
- //Get Business Service Offering of Affected CI and PUSH to ARRAY
- var logmsg ='';
- for(var i=0; i < ci_array.length; i++){
- var gr2 = new GlideRecord("cmdb_rel_ci");
- gr2.addQuery("child", ci_array[i]);
- gr2.addEncodedQuery(queryString);
- gr2.query();
- while (gr2.next()) {
- var so = new GlideRecord("service_offering");
- so.addQuery("parent", gr2.parent);
- so.query();
- if (so.next()) {
- createOutage(so.sys_id,incId);
- }
- logmsg += "BEFORE gr2.parent:" + gr2.parent + '\n';
- }
- }
- logmsg += '\n\n';
- //Create Outages based on Business Service Offerings tied to the affected CI's
- function createOutage(bs){
- var inc = new GlideRecord("incident");
- inc.get(incId);
- var gr3 = new GlideRecord("cmdb_ci_outage");
- gr3.initialize();
- gr3.cmdb_ci = bs;
- gr3.type = pType;
- gr3.task_number = current.sys_id; //current.incident
- gr3.message = "Created by System";
- gr3.begin = current.u_service_outage_time;
- gr3.end = current.u_service_restoration_time;
- gr3.u_state = 'pending_review';
- gr3.insert();
- }
- },
- type: 'OutageRecord'
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement