# Dictionnaires

Les dictionnaires permettent de modifier des données existantes dans GLPI ou de nouvelles données afin de regrouper des données redondantes.

Les dictionnaires sont basés sur le [moteur de règles](/documentation/fr/modules/administration/rules/rulesmanagement.md) de GLPI et sont disponibles pour certains types d'éléments (logiciels, fournisseurs, listes déroulantes). Les règles associées à un dictionnaire modifieront les valeurs qui sont soit insérées manuellement, soit insérées automatiquement via un outil d'inventaire ou via des plugins (par exemple, l'injecteur de fichiers CSV).

## Import, export et duplication

L'export, l'import et la duplication sont disponibles pour les dictionnaires ou les règles. Ces opérations peuvent être réalisées globalement depuis la page principale du dictionnaire ou par lots en utilisant les actions de masse depuis les résultats de recherche du dictionnaire. Ces fonctionnalités sont utiles par exemple lors de la migration de règles d'un environnement de pré-production vers un environnement de production.

{% hint style="info" %}
L'export ou l'import utilisent un format de fichier XML
{% endhint %}

## Configuration des dictionnaires de données

Un dictionnaire fonctionne de la manière suivante :

1. Les données à ajouter entrent dans le dictionnaire ;
2. Le moteur de règles exécute toutes les règles applicables à ce type de données et s'arrête à la première règle correspondante ;
3. Les données modifiées sont retournées par le dictionnaire et insérées dans la base de données.

Le bouton *Rejouer les règles du dictionnaire* (sous la liste des règles du dictionnaire) permet de rejouer les règles sur les données déjà existantes dans la base de données.

{% hint style="warning" %}
Si la base de données est volumineuse, le paramètre *memory\_limit* dans le fichier de configuration PHP doit être ajusté avec soin : le traitement par un dictionnaire peut être lourd.
{% endhint %}

{% hint style="success" %}
\* Il est fortement recommandé de tester les règles sur une base de données de test et de sauvegarder la base de données avant le lancement en production du dictionnaire ou avant l'insertion de nouvelles règles \* Un script est disponible dans le répertoire *scripts* de l'installation GLPI, nommé *compute\_dictionnary.php*, qui permet de lancer le traitement du dictionnaire en mode ligne de commande ; cela permet de contourner les problèmes de limite d'exécution et offre une accélération significative
{% endhint %}

### Dictionnaires globaux

#### Logiciels

Le dictionnaire de logiciels modifie les données des logiciels (nom, version, fabricant) afin de compléter ou de fusionner des logiciels. Il est utilisé pour rendre plus cohérents des logiciels équivalents dont le nom n'est pas identique (par exemple Mozilla Firefox 3.0 et Mozilla Firefox 3.6) ou pour ajouter un fabricant s'il est absent.

Ce dictionnaire permet également de rediriger la création d'un logiciel ou d'un ensemble de logiciels dans une entité donnée, en choisissant l'action *Entité* et en sélectionnant l'entité dans laquelle créer le logiciel. Cette fonctionnalité peut également être utilisée avec l'option générale *Entité pour les logiciels* disponible dans la configuration de l'entité.

{% hint style="info" %}
Pour une gestion optimale des logiciels et des licences dans un environnement multi-entités, il est possible d'utiliser le dictionnaire de logiciels simultanément avec les logiciels visibles dans les sous-entités et ainsi d'utiliser la fonctionnalité de regroupement.
{% endhint %}

{% hint style="warning" %}
L'utilisation de l'action *Ajouter résultat regexp* sur une version doit être utilisée avec le plus grand soin ; en effet, cette action n'est prise en compte que lors de l'importation de données provenant d'un outil d'inventaire et sera ignorée lors de la réapplication du dictionnaire sur une base de données existante.
{% endhint %}

À titre d'exemple, l'image suivante décrit le regroupement des logiciels Mozilla. Les critères sont accumulés avec ET.

<figure><img src="/files/oOTd3cNpWGsrxYaNkRZQ" alt="images/criteriaMozilla.png"><figcaption><p>Critères pour le regroupement des logiciels Mozilla</p></figcaption></figure>

L'image suivante décrit l'action associée au regroupement des logiciels Mozilla.

<figure><img src="/files/UfcMnSVGBdRFld9Swzc1" alt="images/actionMozilla.png"><figcaption><p>Action pour le regroupement des logiciels Mozilla</p></figcaption></figure>

L'image suivante présente le résultat du regroupement des logiciels Mozilla : les logiciels sont regroupés par type (Mozilla Thunderbird, Mozilla Firefox...) et les versions sont regroupées par type.

<figure><img src="/files/T90qwCRSfWN3DMPdigUX" alt="images/resultMozilla.png"><figcaption><p>Résultat du regroupement des logiciels Mozilla</p></figcaption></figure>

{% hint style="info" %}
**Exemple pour le regroupement des mises à jour Windows, très peu clair !**

Autre exemple pour regrouper les mises à jour Windows. Cette fois les critères sont des OU et non des ET *Critères* Logiciel expression rationnelle vérifie /Correctif.\*XP.\*KB(\[0-9]\*)/ Logiciel expression rationnelle vérifie /Mise.\*XP.\*KB(\[0-9]\*)/ Logiciel expression rationnelle vérifie /Update.\*XP.\*KB(\[0-9]\*)/ *Actions* Logiciel assigner Mise à jour Windows Version assigner valeur depuis regex #0
{% endhint %}

#### Fabricant

Ce dictionnaire permet de regrouper sous un nom unique les noms de fabricants provenant d'un outil d'inventaire sous différentes formes.

{% hint style="info" %}
**Exemple pour le regroupement de fabricants, peu clair !**

Regrouper les fabricants . Sun\_Microsystems . Sun Microsystems, Inc. pour OpenOffice.org-Community . Sun Microsystems, Inc. . Sun Microsystems, Inc sous le nom Sun Microsystems.
{% endhint %}

#### Imprimantes

Ce dictionnaire permet de modifier les informations des imprimantes en fonction du fabricant et/ou du nom. Il est possible de rejeter un import (par exemple un nom d'imprimante commençant par `//`), de regrouper des imprimantes sous le même nom, d'assigner un fabricant ou de forcer le type de gestion (global ou unitaire).

### Listes déroulantes

Ce dictionnaire permet de modifier les listes déroulantes liées à l'inventaire : types et modèles d'éléments, système d'exploitation, version et service pack.

#### Modèles

Les critères possibles sont le fabricant et le modèle de l'élément.

{% hint style="info" %}
**Exemple : transformer un numéro technique en nom commercial du modèle**

Souvent, les outils d'inventaire extraient le numéro technique du modèle, ce qui est sans intérêt pour l'utilisateur. Cet exemple permet d'extraire le nom commercial du modèle tout en conservant le numéro technique qui peut être requis en cas de demande d'intervention auprès d'un fournisseur.

<img src="/files/7o5YLD3sicMVq0imZUsq" alt="Exemple de dictionnaire pour modèle d&#x27;ordinateur : règle" data-size="original"><img src="/files/jiNmNXXjjefjLIjeMz9a" alt="Exemple de dictionnaire pour modèle d&#x27;ordinateur : action" data-size="original">

Le résultat obtenu sera par exemple : Netvista S42 (8319LGV)
{% endhint %}

#### Types

Le seul critère possible est le type d'élément.

{% hint style="info" %}
**Exemple : harmonisation des noms de périphériques**

<img src="/files/HRp2oiyA0UrfFgUoLRDl" alt="Exemple de dictionnaire sur type de périphérique : règle" data-size="original">
{% endhint %}

<figure><img src="/files/MnCrVYGpmIxEHLyWj21M" alt="images/actionKbd.png"><figcaption><p>Exemple de dictionnaire sur type de périphérique : action</p></figcaption></figure>

#### Systèmes d'exploitation

Selon le dictionnaire choisi, le critère sera basé sur le système d'exploitation lui-même, sur le service pack du système d'exploitation ou sur la version du système d'exploitation.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.glpi-project.org/documentation/fr/modules/administration/dictionnaries.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
