Bonjour,

  Dans le cadre d’un stage en développement, mon tuteur, utilisateur de glpi,
m’a demandé d’étoffer le module de statistique afin de le rendre plus complet.
  J’ai remarqué le ticket #946 concernant le cumul statistique pour les
catégories parent/enfant sur la roadmap et j’ai commencé à le réaliser.

Voici les modifications à apporter selon moi :

-Dans le fichier \inc\stat.function.php :

Ajouter la fonction suivante :

//Fonction permettant de trouver les enfants d'une catégorie donnée.
//Prend l'ID de la catégorie en paramètre.
//Renvoi une chaine contenant les résultats séparés par des virgules.
function getChildren($parentID){

                    global $DB;

                    if ($parentID=="")
                        return("''");

            $req="SELECT glpi_dropdown_tracking_category.ID FROM
glpi_dropdown_tracking_category WHERE
glpi_dropdown_tracking_category.parentID=$parentID ORDER BY
glpi_dropdown_tracking_category.ID;";
            $result=$DB->query($req);

                if ($result&&$DB->numrows($result)>0)
            {
                     while ($row = $DB->fetch_array($result))
              {
              $chaine.=$row['ID'].", ";
              $chaine.=getChildren($row['ID']);// appel recurssif pour parcourir
entierement "l'arbre des enfants".
              }
            }
            return ($chaine);
            }


Puis remplacer la ligne suivante :

function constructEntryValues( ….
….
….
        switch ($param){ ….
….
                case "category":
            $WHERE.=" AND glpi_tracking.category='$value'";
….
Par :

            $WHERE.=" AND glpi_tracking.category IN
(".getChildren($value).$value.")";


  D’autre part je vous propose également la réalisation de graphiques globaux
(toujours en histogramme) pour les statistiques par ticket. C’est-à-dire, par
exemple, un graphique ayant en abscisse les différentes priorités et
représentant le nombre de ticket ou le délai moyen de prise en compte du ticket,
entre les dates données, pour chacune des priorités. On pourrait également
ajouter des « filtres », à savoir, par exemple, un graphique global par ticket
et par priorité « filtré » pour un groupe donné.

Qu’en pensez vous ? Si vous avez des questions, n’hésitez pas à me les poser (au
besoin je suis sur le chan irc les journées en semaine).

Cordialement.

Raphaël Bulliard

_______________________________________________
Glpi-dev mailing list
Glpi-dev@gna.org
https://mail.gna.org/listinfo/glpi-dev

Reply via email to