- Edited
Can your system give me stats per month and per week cals closed and opended ?
Can your system give me stats per month and per week cals closed and opended ?
At the moment osTicket does not have this kind of reports. Perhaps if you are a programmer you can try to create it and share it with the community.
Here is a premade script taken from eticket and adapted in osticket:
<html>
<header>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="Content-Language" content="pl">
<link rel="stylesheet" type="text/css" href="css/main.css">
<link rel="stylesheet" type="text/css" href="css/style.css">
</script>
</header>
<center><h2>Stats</h2></center>
<br /><table ALIGN=center ><tr><td class="c"><b>Teamler</b></td><td class="c"><b>Response total</b></td><td class="c"><b>In 3 days</b></td><td class="c"><b>In 7 days</b></td><td class="c"><b>In 14 days</b></td><td class="c"><b>In 28 days</b></td></tr>
<?php
$rep_conexion = mysql_connect("DBHOST", "DATABASE", DB_PASSWORD); // Conexion
$sel_db = mysql_select_db("DB_NAME"); // seleccion de base
$SelTicket_reps = "Select * from ost_staff ORDER BY firstname"; //sel en reps
$res = mysql_query($SelTicket_reps); //query en reps
while ($fila = mysql_fetch_array($res)) // loop de $fila
{
IF ($fila != "admin") //I think its not needed in osticket ;)
{
Echo "<tr><td class='b'>";
Echo "<b>";
Echo $fila;
Echo "</b>";
Echo "</td>";
$SelTicket_answers = "Select * from ost_ticket_response where staff_id = '".$fila."'"; //sel en answers
$QueryTicket_answers = mysql_query($SelTicket_answers); //query en answers
$a = 0;
$b = 0;
$c = 0;
$d = 0;
$e = 0;
while ($fila_rep = mysql_fetch_array($QueryTicket_answers)) // loop de $fila
{
$a++;
$date_difference = (int)((strtotime(date('y-m-d'))-strtotime($fila_rep))/86400);
IF ($date_difference < 3)
{
$b++;
}
IF ($date_difference < 7)
{
$c++;
}
IF ($date_difference < 14)
{
$d++;
}
IF ($date_difference < 28)
{
$e++;
}
}
Echo "<td class='b'>";
Echo $a;
Echo "</td>";
Echo "<td class='b'>";
Echo $b;
Echo "</td>";
Echo "<td class='b'>";
Echo $c;
Echo "</td>";
Echo "<td class='b'>";
Echo $d;
Echo "</td>";
Echo "<td class='b'>";
Echo $e;
Echo "</td>";
Echo "</tr>";
}
} Echo "</table>";
?>
<br><br>
<table ALIGN=center><tr><td class="c"><b>Dept</b><td class="c"><b>Total tickets</b></td><td class="c"><b>Opened tickets</b></td><td class="c"><b>Closed tickets</b></td><td class="c"><b>In 7 days</b></td></tr>
<?php
$SelTicket_cats = "Select * from ost_department"; //sel en categories
$cats = mysql_query($SelTicket_cats); //query en cats
while ($fila_cat = mysql_fetch_array($cats)) // loop de $fila
{
Echo "<tr><td class='b'>";
Echo "<b>";
Echo $fila_cat;
Echo "</b>";
Echo "</td>";
$ff = $fila_cat;
$f = 0;
$g = 0;
$h = 0;
$hh = 0;
$SelTickets = "Select * from ost_ticket where dept_id = $ff"; //sel en tickets;
$cats_tickets = mysql_query($SelTickets); //query en cats
$SelTickets = "Select * from ost_ticket where dept_id = $ff and status = 'open'"; //sel en tickets;
$cats_tickets = mysql_query($SelTickets); //query en cats
while ($fila_cat_tickets = mysql_fetch_array($cats_tickets)) // loop de $SelTickets
{
$g++;
}
$SelTickets = "Select * from ost_ticket where dept_id = $ff and status = 'closed'"; //sel en tickets;
$cats_tickets = mysql_query($SelTickets); //query en cats
while ($fila_cat_tickets = mysql_fetch_array($cats_tickets)) // loop de $SelTickets
{
$h++;
}
$f = $g+$h;
$SelTickets = "SELECT * FROM ost_ticket WHERE dept_id = $ff"; //sel en tickets;
$cats_tickets = mysql_query($SelTickets); //query en cats
while ($fila_cat_tickets = mysql_fetch_array($cats_tickets)) // loop de $SelTickets
{
$date_difference = (int)((strtotime(date('y-m-d'))-strtotime($fila_cat_tickets))/86400);
IF ($date_difference < 7)
{
$hh++;
}
}
Echo "<td class='b'>";
Echo $f;
Echo "</td>";
Echo "<td class='b'>";
Echo $g;
Echo "</td>";
Echo "<td class='b'>";
Echo $h;
Echo "</td>";
Echo "<td class='b'>";
Echo $hh;
Echo "</td>";
Echo "</tr>";
}?></table><br><br><table ALIGN=center><tr><td class="c"><b>Tickets in total</b></td><td class="c"><b>Opened</b></td><td class="c"><b>Closed</b></td><td class='c'><b>In last 7 days</b></td></tr><tr>
<?php
$i = 0;
$j = 0;
$k = 0;
$SelTickets = "Select * from ost_ticket where status = 'open'"; //sel en tickets;
$cats_tickets = mysql_query($SelTickets); //query en cats
$j = mysql_num_rows($cats_tickets);
$SelTickets = "Select * from ost_ticket where status = 'closed'"; //sel en tickets;
$cats_tickets = mysql_query($SelTickets); //query en cats
$k = mysql_num_rows($cats_tickets);
$i = $k+$j;
$SelTickets = "Select * from ost_ticket"; //sel en tickets;
$cats_tickets = mysql_query($SelTickets); //query en cats
while ($fila_cat_tickets = mysql_fetch_array($cats_tickets)) // loop de $SelTickets
{
$date_difference = (int)((strtotime(date('y-m-d'))-strtotime($fila_cat_tickets))/86400);
IF ($date_difference < 7)
{
$l++;
}
}
Echo "<td class='b'>";
Echo $i;
Echo "</td>";
Echo "<td class='b'>";
Echo $j;
Echo "</td>";
Echo "<td class='b'>";
Echo $k;
Echo "</td>";
Echo "<td class='b'>";
Echo $l;
?></td></tr></table>
</html>
Scirpt may not be very functional for large number of tickets ;)
Scirpt may not be very functional for large number of tickets ;)
No doubt...it is the most inefficient code I've seen in a long ..long time.
No doubt...it is the most inefficient code I've seen in a long ..long time.
Ahhh... but it IS coded which beats doing without! ;)
any code yet
has any one fugured this out yet ?