# Tableaux de bord avancés

## Prérequis (auto-hébergé)

| Version GLPI | PHP minimum | Recommandé |
| ------------ | ----------- | ---------- |
| 10.0.x       | 8.1         | 8.2        |
| 11.0.x       | 8.2         | 8.4        |

{% hint style="info" %}
Une souscritpion [GLPI Network STANDARD](https://services.glpi-network.com/#offers) (ou supérieur) est requis. Ce plugin est également disponible pour toutes les instances [Cloud de GLPI Network](https://glpi-network.cloud).
{% endhint %}

***

## Installer le plugin

* Rendez-vous sur le marketplace. Téléchargez et installez le plugin « **Advanced dashboard** ».

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-968091ccc263e440af4fc34499798a6548b29148%2FAdvanceddashboard-1.png?alt=media" alt="images/Advanceddashboard-1.png"><figcaption></figcaption></figure></div>

***

## Configuration du plugin

{% hint style="warning" %}
Ce plugin nécessite **des connaissances minimales en SQL** afin de pouvoir définir certains critères pour les différentes requêtes qui apparaîtront dans les tableaux de bord. Il est également recommandé de **connaître la structure des tables GLPI**.
{% endhint %}

### Créer une requête SQL

L'exemple ci-dessous nous donne le nombre de tickets sur l'entité racine sur les 2 dernières années :

```sql
SELECT YEAR(t.date_creation) as 'Year', count(*) as 'Volume of tickets'
FROM glpi_tickets t
JOIN glpi_entities e on t.entities_id = e.id
WHERE e.completename LIKE "Root entity"
    AND YEAR(t.date_creation) > YEAR(CURRENT_DATE()) - 5
GROUP BY YEAR(t.date_creation)
UNION
SELECT
    CONCAT('Estimated total end ', YEAR(CURRENT_DATE())),
    ROUND(
        (
            SELECT count(*)
            FROM glpi_tickets t4
            JOIN glpi_entities e4 on t4.entities_id = e4.id

            WHERE e4.completename LIKE "Entité racine" (root entity)
                AND YEAR(t4.date_creation) = YEAR(CURRENT_DATE()) - 1
        ) *
        (
            (
                SELECT count(*)
                FROM glpi_tickets t3
                JOIN glpi_entities e3 on t3.entities_id = e3.id
                WHERE e3.completename LIKE "Root entity"
                    AND YEAR(t3.date_creation) = YEAR(CURRENT_DATE())
            )
            /
            (
                SELECT count(*)
                FROM glpi_tickets t2
                JOIN glpi_entities e2 on t2.entities_id = e2.id
                WHERE e2.completename LIKE "Root entity"
                    AND YEAR(t2.date_creation) = (YEAR(CURRENT_DATE()) - 1)
                    AND (
                        MONTH(t2.date_creation) < MONTH(CURRENT_DATE())
                        OR MONTH(t2.date_creation) = MONTH(CURRENT_DATE()) AND DAY(t2.date_creation) <= DAY(CURRENT_DATE())
                    )

            )
        )
    )
```

### Paramétrage des champs de la requête

* Depuis **`Outils`** > **`Advanced dashboard` (ou `SQL pour advanced dashboard` pour GLPI 10)**, cliquez sur **Ajouter**.
* Nommez votre requête (celle qui sera visible depuis les tableaux de bord) et identifiez-la comme **active**.
* Dans l'onglet SQL Editor, collez la requête ci-dessus en prenant soin de changer le nom de l'entité si vous l'avez modifié.
* Cliquez sur l'icône disquette pour sauvegarder la requête puis sur l'icône play pour exécuter la requête.

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-0c3aeccea4f600bf54d3acd15e026c1758845dac%2FAdvanceddashboard-2.png?alt=media" alt="images/Advanceddashboard-2.png"><figcaption></figcaption></figure>

Un encart en bas affichera le résultat de la requête :

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-c65e51dda6f9fddb6a668cc451136ac777a4fe76%2FAdvanceddashboard-3.png?alt=media" alt="images/Advanceddashboard-3.png"><figcaption></figcaption></figure>

* Dans l'onglet **Configuration des champs**, définissez le label, le nombre et le label principal (optionnel, c'est le nom que portera votre tableau). Dans notre cas, *le label sera « year »*, *le nombre sera « number of tickets »* et le *label principal sera « number of tickets per year »*.
* Sélectionnez le type de graphique (ceci est à titre informatif, afin de pouvoir prévisualiser votre tableau ; il vous sera demandé de sélectionner le type de graphique que vous souhaitez voir apparaître dans la tuile plus tard).
* Vous pouvez limiter la quantité de données à afficher.
* Cliquez ensuite sur **Sauvegarder les champs et prévisualiser**.

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-f328dfc4a552cff2eb389ce17035d080015365d4%2FAdvanceddashboard-4.png?alt=media" alt="images/Advanceddashboard-4.png" width="489"><figcaption></figcaption></figure></div>

### Paramétrage du tableau de bord

* Depuis **Assistance** > **Tableau de bord**, sélectionnez le tableau de bord qui doit recevoir la nouvelle tuile.
* Cliquez sur l'icône d'édition.
* Ajoutez une nouvelle tuile avec l'icône plus.
* Sélectionnez la requête que vous venez de créer.
* Choisissez une couleur pour votre tuile.

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-bfeef3330ea79c46070ca33cf72af048f4d91a4e%2FAdvanceddashboard-5.png?alt=media" alt="images/Advanceddashboard-5.png"><figcaption></figcaption></figure></div>

* Il vous sera ensuite demandé de sélectionner le type de graphique.
* Certains tableaux de bord peuvent vous demander d'utiliser des couleurs et d'afficher les valeurs et les labels.

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-524e67e6849df95e295aa18fe88b557a51b17fc5%2FAdvanceddashboard-6.png?alt=media" alt="images/Advanceddashboard-6.png" width="366"><figcaption></figcaption></figure></div>

* Votre tuile est maintenant prête.

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fgit-blob-d8d7c59eb2022babdf5a66b37d3304fdfac127dd%2FAdvanceddashboard-7.png?alt=media" alt="images/Advanceddashboard-7.png"><figcaption></figcaption></figure></div>

***

## Ajout d'une nouvelle base de données

Vous pouvez ajouter une autre base de données GLPI afin d'effectuer des requêtes sur celle-ci.

* Cliquez sur **`Outils`** > **`Advanced dashboard`** (ou **SQL pour Advanced dashboard**)
* Dans le menu en haut, cliquez sur **`base de données`**, puis **`+ Ajouter`**
* Entrez les informations de votre base de données puis cliquez sur **`+ Ajouter`**

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2FAKMV3uU1CDW8ga8euBra%2Fadvanced_dashboard-add-database.png?alt=media&#x26;token=f89cd522-d7bf-4e29-8b5f-f24510536986" alt=""><figcaption><p>Ajouter une nouvelle base de données</p></figcaption></figure>

* Depuis **`Outils`** > **`Advanced dashboard`** (ou **SQL pour Advanced dashboard**) vous pourrez sélectionner la base de données qui doit être interrogée

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2FA5cFgw0PWn30WH6UG8bm%2Fadvanced_dashboard-select-database.png?alt=media&#x26;token=ebea904a-2734-4547-bb2a-f5684a3a85eb" alt=""><figcaption><p>Sélectionnez la nouvelle base de données</p></figcaption></figure>

***

## Recherche sauvegardée

Avec Advanced Dashboard, vous pouvez affichée les résultats de vos recherches sauvegardées depuis un tableau de bord. Il est possible d'effectuer cette action avec les éléments du parc et des tickets.

{% hint style="info" %}
Seules les **recherches sauvegardées publiques** peuvent être intégrées à un tableau de bord
{% endhint %}

Nous prendrons l'exemple des tickets ayant un **statut nouveau**

### Effectuer et sauvegarder une recherche&#x20;

La 1ère étape est d'effectuer une recherche et de la sauvegarder.&#x20;

* Depuis **`Assistance`** > **`Tickets`**, effectuez votre recherche avec les critères souhaités&#x20;

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2FMmZmaCdbDApjzrMC5G8k%2Fadvanced_dashboard-saved-search.png?alt=media&#x26;token=8fb86f26-2388-49ce-be52-ae6b5a7e8bc4" alt=""><figcaption><p>Effectuer un recherche sauvegardée</p></figcaption></figure>

* Cliquez sur l'icône de sauvegarde![](https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2FxPelB3wmEbGl4bHI29IZ%2Fadvanced_dashboard-saved-your-search.png?alt=media\&token=b163b44c-1498-4511-9141-7e7e045ff5a2)
* Dans la nouvelle fenêtre qui apparait, ajustez les paramèters :&#x20;
  * **Nom**
  * **Compter** : auto / Oui / Non
  * **Visibilité** : votre recherche doit être publique
  * **Entité :** sélectionnez l'entité souhaitée
  * **Sous-entités** : autoriser ou non l'accès aux sous-entités

<figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fh1rqAUQcs3ykkUwqsgoR%2Fadvanced_dashboard-public-search.png?alt=media&#x26;token=46670652-e9b0-4c8f-8601-21574ead9f55" alt=""><figcaption><p>Rendre la recherche publique</p></figcaption></figure>

### Paramétrage de la recherche sauvegardée

Vous serez ensuite redirigée vers votre nouvelle recherche sauvegardée. Vous pouvez ajuster certains paramètres au besoin.&#x20;

Vous pourrez également ajouter des alertes. Voir l'article dédié pour plus d'information :&#x20;

{% content-ref url="<https://app.gitbook.com/s/0fOFvaYAGyPcoVZsr1BX/readme-1-1/saved-searches>" %}
[Recherches sauvegardées](https://app.gitbook.com/s/0fOFvaYAGyPcoVZsr1BX/readme-1-1/saved-searches)
{% endcontent-ref %}

### Intégration dans le tableau de bord

* Depuis votre tableau de bord, cliquez sur l'icône d'édition <i class="fa-pen-to-square">:pen-to-square:</i>&#x20;

* Cliquez sur une tuile vide afin d'ajouter votre recherche<br>

  <div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2F7GoJNv6VB07PFlSXc2bb%2Fadvanced_dashboard-add-search.png?alt=media&#x26;token=37e2b4b1-b21d-4d9f-be89-3e78f1600427" alt=""><figcaption><p>Ajouter une nouvelle tuile</p></figcaption></figure></div>

* Dans la liste déroulante, sélectionnez **`recherches sauvegardées publiques`** puis la recherche souhaitée\ <br>

  <div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2Fq11rF2hqLRvMuijNUV60%2Fadvanced_dashboard-add-card.png?alt=media&#x26;token=97814dfe-f5fb-424c-bc25-bc3d0ddcab2b" alt=""><figcaption><p>Sélectionner la recherche sauvegardée</p></figcaption></figure></div>

Plusieurs mode d'affichage sont possibles. Vous pouvez opter pour un nombre qui sera affiché puis en cliquant sur ce nombre vous serez rediriger vers le résultat de la recherche.&#x20;

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2FJhvOlw2do4NLlG1xMnE4%2Fadvanced_dashboard-search-number.png?alt=media&#x26;token=760d024b-293d-4932-99bc-9447ca580316" alt=""><figcaption><p>Ajouter le resultat en nombre</p></figcaption></figure></div>

Vous pouvez également afficher le résultat directement dans le tableau de bord. Il vous faudra ajuster le nombre de résultat maximum afin de ne pas surcharger votre tableau de bord.

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2FokxaTZo0aksYqJgjEGbk%2Fadvanced_dashboard-search%20result.png?alt=media&#x26;token=34717415-910c-4659-a2e1-a6e5d3192e0f" alt=""><figcaption><p>Ajouter le résultat de la recherche</p></figcaption></figure></div>

<div align="left"><figure><img src="https://782257568-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFKLcURHvFBybgf5dths%2Fuploads%2F9x6R6fX4BQBwrYGEFIQL%2Fadvanced_dashboard-result.png?alt=media&#x26;token=1aa978e6-4204-4d6a-aa78-8c9631ef2750" alt=""><figcaption><p>Affichage en nombre et en résultat</p></figcaption></figure></div>

***

## FAQ

Si vous avez des questions concernant l'utilisation du plugin, n'hésitez pas à consulter notre FAQ

<a href="https://app.gitbook.com/s/VU1qbB9Oe25HAYDAQ4tR/plugins/advanced-dashboard" class="button secondary">Aller à la FAQ</a>

***
