Add problem and change to donuts on SOW home page

Brian Lancaster
Tera Sage

This is the code I got for making problem show in SOW for level 2 from training. The first code had to be added to the Tire 1 donut config. The second peace of code needed to be added to the Tire 2 donut config. But this only shows problem tasks and change task. I need to also show problem and change. What needs to change to show change and problem.

 

Tire 1 donut config:

 

function include({imports}) { 
    let serviceDeskLandingPageUtilsSNC = imports['sn_sow_inc.SowIncidentLandingPageUtilsSNC']();
    class ServiceDeskLandingPageUtils extends serviceDeskLandingPageUtilsSNC {
 
		static async getVisualizationConfig(helpers, mode, conditionalRecordCount=0) {
			const evamDef = this.getEvamDef();
			const visualizationConfig = [{
					"id": "incident_assigned",
					"tableName": "incident",
					"tableDisplayValue": "Incident",
					"myWorkQuery": "active=true^assigned_toDYNAMIC90d1921e5f510100a9ad2572f2b477fe^state!=6",
					"myTeamQuery": "active=true^assigned_toISNOTEMPTY^assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744^state!=6",
					"listView": mode == "your_work" ? "sow_landing_page_assigned" : "sow_landing_page",
					"header": mode == 'your_work' ? await helpers.translate("Incidents assigned to you") : await helpers.translate("Incidents assigned to your team"),
					"groupByField": "state",
					"evamId": evamDef['incidentEvamDefinitionId'],
					"updated_on": "^ORDERBYDESCsys_updated_on",
				},
				{
					"id": "incident_sla",
					"tableName": "task_sla",
					"tableDisplayValue": "Task SLA",
					"myWorkQuery": "task.sys_class_name=incident^task.assigned_toDYNAMIC90d1921e5f510100a9ad2572f2b477fe^task.active=true^sla.type=SLA^ORsla.type=OLA^active=true^time_left<=1970-01-08 00:00:00",
					"myTeamQuery": "task.sys_class_name=incident^task.assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744^task.active=true^sla.type=SLA^ORsla.type=OLA^active=true^time_left<=1970-01-08 00:00:00",
					"listView": 'sow_landing_page',
					"header": await helpers.translate("Incident SLAs"),
					"groupByField": "time_left",
					"evamId": evamDef['incidentSlaEvamDefinitionId'],
					"updated_on": "^ORDERBYtime_left",
				},
				{
					"id": "unassigned_incidents",
					"tableName": "incident",
					"tableDisplayValue": "Incident",
					"myWorkQuery": "active=true^assigned_toISEMPTY^assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744",
					"myTeamQuery": "active=true^assigned_toISEMPTY^assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744",
					"listView": mode == "your_work" ? "sow_landing_page_assigned" : "sow_landing_page",
					"header": await helpers.translate("Unassigned incidents"),
					"groupByField": "priority",
					"evamId": evamDef['incidentEvamDefinitionId'],
					"updated_on": "^ORDERBYDESCsys_updated_on",
				},
				{
					"id": "problem_task_assigned",
					"tableName": "problem_task",
					"tableDisplayValue": "Problem Tasks",
					"myWorkQuery": "active=true^assigned_toDYNAMIC90d1921e5f510100a9ad2572f2b477fe",
					"myTeamQuery": "active=true^assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744",
					"listView": mode == "your_work" ? "sow_landing_page_assigned" : "sow_landing_page",
					"header": mode == 'your_work' ? await helpers.translate("Problem Tasks assigned to you") : await helpers.translate("Problem Tasks assigned to your team"),
					"groupByField": "state",
					//  "evamId": evamDef['incidentEvamDefinitionId'],
					"updated_on": "^ORDERBYDESCsys_updated_on",
			  },	
				{
					"id": "catalog_tasks",
					"tableName": "sc_task",
					"tableDisplayValue": "Catalog Task",
					"myWorkQuery": "active=true^assigned_toDYNAMIC90d1921e5f510100a9ad2572f2b477fe",
					"myTeamQuery": "active=true^assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744",
					"listView": 'sow_landing_page',
					"header": mode == 'your_work' ? await helpers.translate("Catalog tasks assigned to you") : await helpers.translate("Catalog tasks assigned to your team"),
					"groupByField": "state",
					"evamId": evamDef["catalogTaskEvamDefinitionId"],
					"updated_on": "^ORDERBYDESCsys_updated_on",
				}
			];
 
			if(mode=='your_work' && conditionalRecordCount>0){
				const conditionalConfig = await this.getConditionalVisualizationConfig(helpers);
				visualizationConfig.push(conditionalConfig);
			}
 
			return visualizationConfig;
		}
 
		static async fetchTitle(table, nameValueMap, groupMode = false, elementId) {
            if (table === "task") {
                return this.getLabelMaps(table, nameValueMap['sys_class_name'], groupMode, elementId);
            }
            return this.getLabelMaps(table, nameValueMap['state'], groupMode, elementId);
        }
static getLabelMaps(table, selectedField, groupMode = false, elementId) {
            if (selectedField == undefined) {
                selectedField = 'all';
            }
            const labelMap = {
                'incident': {
                    '1': 'New incidents',
                    '2': 'In Progress incidents',
                    '3': 'On Hold incidents',
                    '6': 'Resolved incidents',
                    'all': 'Incidents'
                },
                'change_request': {
                    '0': 'In Review changes',
                    '-1': 'Implement changes',
                    '-2': 'Scheduled changes',
                    '-3': 'Authorize changes',
                    '-4': 'Assess changes',
                    '-5': 'New changes',
                    'all': 'Changes'
                },
                'problem_task': {
                    '151': 'New',
                    '154': 'Work in Progress',
                    '152': 'Assess',
                    '157': 'Closed',
                    'all': 'Problem Tasks'
                },
                'problem': {
                    '101': 'New problems',
                    '102': 'Assess problems',
                    '106': 'Resolved problems',
                    '104': 'Fix in Progress problems',
                    '103': 'Root Cause Analysis problems',
                    'all': 'Problems'
                },
                'task': {
                    'incident_task': 'Incident tasks',
                    'problem_task': 'Problem tasks',
                    'change_task': 'Change tasks',
                    'sc_task': 'Catalog tasks',
                    'incident': 'Incidents',
                    'problem': 'Problems',
                    'change_request': 'Change requests',
                    'all': 'Tasks'
                }
            };
            if (elementId === 'delegated_task')
                return labelMap[table][selectedField] + ' delegated to you';
            if (groupMode)
                return labelMap[table][selectedField] + ' assigned to your team';
            return labelMap[table][selectedField] + ' assigned to you';
        }
 
 
    }
    return ServiceDeskLandingPageUtils;
}

 

Tire 2 donut config

 

function include({imports}) { 
 
    let SOWLandingPageTier2UtilsSNC = imports['sn_sow_itsm_common.SOWLandingPageTier2UtilsSNC']();
    class SOWLandingPageTier2Utils extends SOWLandingPageTier2UtilsSNC {
 
    static async fetchTitle(table, nameValueMap, groupMode = false, elementId) {
        if (table === "task") {
            return this.getLabelMaps(table, nameValueMap['sys_class_name'], groupMode, elementId);
        }
        return this.getLabelMaps(table, nameValueMap['state'], groupMode, elementId);
    }
 
static getLabelMaps(table, selectedField, groupMode = false, elementId) {
        if (selectedField == undefined) {
            selectedField = 'all';
        }
        const labelMap = {
            'incident': {
                '1': 'New incidents',
                '2': 'In Progress incidents',
                '3': 'On Hold incidents',
                '6': 'Resolved incidents',
                'all': 'Incidents'
            },
            'change_request': {
                '0': 'In Review changes',
                '-1': 'Implement changes',
                '-2': 'Scheduled changes',
                '-3': 'Authorize changes',
                '-4': 'Assess changes',
                '-5': 'New changes',
                'all': 'Changes'
            },
            'problem_task': {
                '151': 'New',
                '154': 'Work in Progress',
                '152': 'Assess',
                '157': 'Closed',
                'all': 'Problem Tasks'
            },
            'problem': {
                '101': 'New problems',
                '102': 'Assess problems',
                '106': 'Resolved problems',
                '104': 'Fix in Progress problems',
                '103': 'Root Cause Analysis problems',
                'all': 'Problems'
            },
            'task': {
                'incident_task': 'Incident tasks',
                'problem_task': 'Problem tasks',
                'change_task': 'Change tasks',
                'sc_task': 'Catalog tasks',
                'incident': 'Incidents',
                'problem': 'Problems',
                'change_request': 'Change requests',
                'all': 'Tasks'
            }
        };
        if (elementId === 'delegated_task')
            return labelMap[table][selectedField] + ' delegated to you';
        if (groupMode)
            return labelMap[table][selectedField] + ' assigned to your team';
        return labelMap[table][selectedField] + ' assigned to you';
    }
 
static async getVisualizationConfig(helpers, mode, conditionalRecordCount) {
   const visualizationConfig = [{
       "id": "incidentAssigned",
       "tableName": "incident",
       "tableDisplayValue": "Incident",
       "myWorkQuery": "active=true^assigned_toDYNAMIC90d1921e5f510100a9ad2572f2b477fe^state!=6",
       "myTeamQuery": "active=true^assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744^state!=6",
       "header": mode == 'your_work' ? await helpers.translate("Incidents assigned to you") : await helpers.translate("Incidents assigned to your team"),
       "groupByField": "state",
       "evamId": "01a404e8b7203010e69dbc16de11a93f",
       "updated_on": "^ORDERBYDESCsys_updated_on",
   },
   {
       "id": "problemsAssigned",
       "tableName": "problem",
       "tableDisplayValue": "Problem",
       "myWorkQuery": "active=true^assigned_toDYNAMIC90d1921e5f510100a9ad2572f2b477fe",
       "myTeamQuery": "active=true^assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744",
       "header": mode == 'your_work' ? await helpers.translate("Problems assigned to you") : await helpers.translate("Problems assigned to your team"),
       "groupByField": "state",
       "evamId": "5f0697b8f49bc510f8773ad5bd0ae292",
       "updated_on": "^ORDERBYDESCsys_updated_on",
   },
   {
       "id": "changesAssigned",
       "tableName": "change_request",
       "tableDisplayValue": "Change Request",
       "myWorkQuery": "active=true^assigned_toDYNAMIC90d1921e5f510100a9ad2572f2b477fe",
       "myTeamQuery": "active=true^assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744",
       "header": mode == 'your_work' ? await helpers.translate("Changes assigned to you") : await helpers.translate("Changes assigned to your team"),
       "groupByField": "state",
       "evamId": "e1f06c4194130110f87765e94545da91",
       "updated_on": "^ORDERBYDESCsys_updated_on",
   },
   {
    "id": "problem_task_assigned",
    "tableName": "problem_task",
    "tableDisplayValue": "Problem Tasks",
    "myWorkQuery": "active=true^assigned_toDYNAMIC90d1921e5f510100a9ad2572f2b477fe",
    "myTeamQuery": "active=true^assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744",
    "listView": mode == "your_work" ? "sow_landing_page_assigned" : "sow_landing_page",
    "header": mode == 'your_work' ? await helpers.translate("Problem Tasks assigned to you") : await helpers.translate("Problem Tasks assigned to your team"),
    "groupByField": "state",
    //  "evamId": evamDef['incidentEvamDefinitionId'],
    "updated_on": "^ORDERBYDESCsys_updated_on",
  },
   {
       "id": "taskAssigned",
       "tableName": "task",
       "tableDisplayValue": "Task",
       "myWorkQuery": "active=true^assigned_toDYNAMIC90d1921e5f510100a9ad2572f2b477fe^sys_class_name=incident_task^ORsys_class_name=problem_task^ORsys_class_name=change_task^ORsys_class_name=sc_task",
       "myTeamQuery": "active=true^assignment_groupDYNAMICd6435e965f510100a9ad2572f2b47744^sys_class_name=incident_task^ORsys_class_name=problem_task^ORsys_class_name=change_task^ORsys_class_name=sc_task",
       "header": mode == 'your_work' ? await helpers.translate("Tasks assigned to you") : await helpers.translate("Tasks assigned to your team"),
       "groupByField": "sys_class_name",
       "evamId": "615d205d94df0110f87765e94545da03",
       "updated_on": "^ORDERBYDESCsys_updated_on",
   }];
 
   if(mode=='your_work' && conditionalRecordCount>0){
       const conditionalConfig = await this.getConditionalVisualizationConfig(helpers);
       visualizationConfig.push(conditionalConfig);
   }
 
   return visualizationConfig;
}
 
    }
 
    return SOWLandingPageTier2Utils;
}

 

0 REPLIES 0