0 $where" )); $compliance = [ 'ticket_count' => intval($row['ticket_count']), 'response_met' => intval($row['response_met']), 'response_missed' => intval($row['response_missed']), 'response_pending' => intval($row['response_pending']), 'resolution_met' => intval($row['resolution_met']), 'resolution_missed' => intval($row['resolution_missed']), 'resolution_pending' => intval($row['resolution_pending']), ]; // Percentages count only judged tickets - a ticket still in flight is // neither a hit nor a miss $response_judged = $compliance['response_met'] + $compliance['response_missed']; $compliance['response_percent'] = $response_judged ? round($compliance['response_met'] / $response_judged * 100, 1) : null; $resolution_judged = $compliance['resolution_met'] + $compliance['resolution_missed']; $compliance['resolution_percent'] = $resolution_judged ? round($compliance['resolution_met'] / $resolution_judged * 100, 1) : null; return $compliance; } // Colour the headline figures the way the ticket list colours rows function slaPercentDisplay($percent) { if (is_null($percent)) { return "-"; } if ($percent >= 95) { return "$percent%"; } if ($percent >= 80) { return "$percent%"; } return "$percent%"; } $overall = getSlaCompliance("AND YEAR(ticket_created_at) = $year"); ?>

SLA Summary

No tickets raised in carried an SLA. Assign SLAs under Admin > SLAs to start tracking.

Tickets with an SLA
Response compliance
Resolution compliance

By Priority ()

Priority Tickets Response met Response missed Response % Resolution met Resolution missed Resolution %

By Month ()

Month Tickets Response % Resolution % Still open
Percentages count only tickets whose targets have been judged - tickets still awaiting a response or resolution are excluded until their outcome is known. Tickets raised before SLAs were assigned carry no SLA and are not counted.