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! ;)

4 months later

any code yet

has any one fugured this out yet ?

Write a Reply...