
Hallo zusammen, nachfolgend poste ich einige statistische Auswertungen. Diese könnten, natürlich ohne Garantie dass ich das DB-Schema korrekt interpretiert habe, ggf. für Euch von Interesse sein. Folgende offene Fragen habe ich hierzu: * Wie kann man am Besten das Ticketalter wiedergeben. Lediglich die Zeitdifferenz auf Ticketerstellung und -abschluss ist ungünstig, wegen Wochenende, Service-Zeiten "TimeWorkingHours" etc. * Ganz wichtig: Die Eskalation dient dazu eine zeitnahe Bearbeitung der Tickets zu unterstützen. Eine wichtige Kennzahl für die Qualität des Service Desk ist eine Aussage über eskalierte Tickets, z.B. Anzahl pro Tag. Wie kann man diese Zahl aus OTRS ermitteln? Gruß, Alexander ================== Zeiteinheiten pro Agenten SELECT (SELECT login FROM system_user WHERE id = time_accounting.create_by), SUM(time_unit)/60 FROM time_accounting WHERE YEAR(create_time) = 2006 AND MONTH(create_time = 1 GROUP BY create_by Anzahl eröffneter Tickets pro Mandant# SELECT customer_id AS Mandant, count( id ) AS Anzahl FROM ticket WHERE YEAR(create_time) = 2006 AND MONTH(create_time) = 1 GROUP BY customer_id Abgeschlossene Tickets mit Bearbeitungszeitdauer SELECT tn AS Vorgang, (change_time - create_time) /3600 AS Stunden FROM ticket WHERE ticket_state_id IN (2, 3) AND YEAR(change_time) = 2006 AND MONTH(change_time) = 1 Abgeschlossene Tickets mit Bearbeitungszeitdauer, Gruppiert nach Ticket-Klassen SELECT (ticket_priority_id-1) DIV 10 AS Klasse, COUNT(id) AS Anzahl, AVG((change_time - create_time) /3600) AS durchschnBearbeitungStunden FROM ticket WHERE ticket_state_id IN (2, 3) AND YEAR(change_time) = 2006 AND MONTH(change_time) = 1 GROUP BY (ticket_priority_id-1) DIV 10 Anzahl und Arbeitszeiten der durchgeführten Aktivitäten SELECT (SELECT CONCAT(article_type.comments, ' (', article_type.name, ')') FROM article_type WHERE id = article.article_type_id) AS Artikeltyp, /* Artikelbezeichnung ermitteln */ COUNT(article.id) AS Anzahl, SUM(time_accounting.time_unit) / 60 AS Stundensumme FROM article LEFT JOIN time_accounting ON article.id = time_accounting.article_id AND article.ticket_id = time_accounting.ticket_id /* LEFT JOIN ist erforderlich da vermutlich alle Aktivitäten mit Zeit != 0 nicht unter time_accounting aufgenommen werden */ WHERE YEAR(article.create_time) = 2006 AND MONTH(article.create_time) = 1 AND article.article_sender_type_id = 1 GROUP BY article.article_type_id Queueverteilung bei Ticketabschluss SELECT (SELECT queue.name FROM queue WHERE queue.id = ticket.queue_id) AS Kategorie, count(id) AS Anzahl FROM ticket WHERE ticket_state_id IN (2, 3) AND YEAR(change_time) = 2006 AND MONTH(change_time) = 1 GROUP BY queue_id Arbeitszeiten pro Mandant# Arbeitszeit die in einem Monat pro Mandant geleistet wurde, verteilt auf eine Anzahl von Tickets. SELECT ticket.customer_id AS Mandant, COUNT( ticket.id ) AS Ticketanzahl, SUM(time_accounting.time_unit) / 60 AS Stundensumme FROM ticket LEFT JOIN time_accounting ON ticket.id = time_accounting.ticket_id WHERE YEAR(time_accounting.create_time) = 2006 AND MONTH(time_accounting.create_time) = 1 GROUP BY ticket.customer_id