Dictionnaires

Présentation

Les dictionnaires permettent de définir des listes fermées de valeurs autorisées pour un champ. Lorsqu'un champ est associé à un dictionnaire, le champ texte libre dans les formulaires Dolibarr est automatiquement remplacé par une liste déroulante. Cela garantit l'homogénéité des données saisies.

Exemples d'usage :

  • Contraindre le champ Poste / Fonction des contacts à une liste prédéfinie (Directeur Général, Responsable Commercial, Comptable, etc.)
  • Normaliser les villes à une liste de communes connues
  • Uniformiser les noms commerciaux à un catalogue de marques
  • Associer un dictionnaire à un champ complémentaire comme Secteur d'activité pour contraindre les valeurs à une liste métier

Accédez aux dictionnaires depuis Accueil > Configuration > Modules > CapNormalize, onglet Dictionnaires.

Créer un dictionnaire

  1. Rendez-vous sur l'onglet Dictionnaires
  2. Remplissez le formulaire en bas de la liste :
    • Code : identifiant technique unique (ex : contact_poste, villes)
    • Libellé : nom affiché (ex : "Postes / Fonctions", "Villes")
  3. Cliquez sur Ajouter

Liste des dictionnaires avec le formulaire de création en bas de page

Créer un dictionnaire à partir des données existantes

Si votre Dolibarr contient déjà des données saisies en texte libre (par exemple des postes/fonctions de contacts saisis depuis des années), vous pouvez créer un dictionnaire automatiquement à partir de ces données :

  1. Depuis l'onglet Dictionnaires, cliquez sur Créer un dictionnaire à partir de l'existant
  2. Choisissez le champ source (par exemple "Poste / Fonction" des contacts)
  3. Le module extrait toutes les valeurs distinctes et les regroupe automatiquement :
    • Les variantes de casse sont fusionnées ("directeur", "Directeur", "DIRECTEUR" → une seule entrée)
    • Les valeurs similaires sont regroupées par proximité (seuil de 85%)
  4. Pour chaque groupe, vous pouvez :
    • Cocher ou décocher l'inclusion dans le dictionnaire
    • Renommer la valeur finale
    • Changer la fonction de normalisation appliquée (ucfirst par défaut)
  5. Renseignez le code et le libellé du dictionnaire
  6. Cochez "Configurer automatiquement ce champ en mode dictionnaire" pour que le basculement soit immédiat
  7. Cliquez sur Créer le dictionnaire et normaliser les données

Le module crée le dictionnaire, ses entrées, et met à jour toutes les fiches en base pour que les anciennes valeurs correspondent aux entrées normalisées.

Page d'import avec les valeurs existantes regroupées et les options de normalisation

Gérer les entrées

Cliquez sur le lien Entrées d'un dictionnaire pour accéder à ses valeurs.

Chaque entrée est définie par sa valeur (le texte stocké en base et affiché dans la liste déroulante). Les entrées sont triées automatiquement par ordre alphabétique.

Liste des entrées d'un dictionnaire triée par ordre alphabétique avec les boutons d'édition et de suppression

Ajouter une entrée

Remplissez le formulaire en bas du tableau et cliquez sur Ajouter.

Modifier une entrée

Cliquez sur l'icône d'édition de l'entrée. Les champs deviennent éditables. Validez avec le bouton de confirmation.

Désactiver une entrée

Cliquez sur l'icône de statut pour basculer une entrée entre actif et inactif. Une entrée inactive n'apparaît plus dans les listes déroulantes mais les données existantes ne sont pas affectées.

Supprimer une entrée

Cliquez sur l'icône de suppression. Une confirmation est demandée. La suppression d'une entrée ne modifie pas les données déjà enregistrées dans les fiches tiers ou contacts.

Fusionner des entrées

Lorsque votre dictionnaire contient des variantes qui désignent la même chose (par exemple "adminsys" et "Administrateur Systèmes"), vous pouvez les fusionner :

  1. Cochez les entrées à fusionner dans la première colonne du tableau
  2. Une barre de fusion apparaît sous le tableau
  3. Sélectionnez l'entrée à conserver dans la liste déroulante
  4. Cliquez sur Fusionner

La fusion met automatiquement à jour toutes les fiches tiers ou contacts qui utilisaient les valeurs supprimées : elles sont remplacées par la valeur conservée.

Sélection de deux entrées à fusionner avec la barre de fusion affichée

Associer un dictionnaire à un champ

L'association se fait dans l'onglet Configuration :

  1. Sélectionnez la fonction Dictionnaire pour le champ souhaité
  2. Choisissez le dictionnaire à associer dans le sélecteur qui apparaît
  3. Enregistrez

Une fois l'association active, les utilisateurs voient une liste déroulante à la place du champ texte libre sur les fiches tiers ou contacts.

L'association fonctionne aussi bien pour les champs natifs (nom, ville, poste...) que pour les champs complémentaires (extrafields) de type texte. Les champs complémentaires apparaissent dans les sections Champs complémentaires des tiers et Champs complémentaires des contacts de la page de Configuration.

Champ Poste affiché sous forme de liste déroulante sur une fiche contact Dolibarr

Ajout rapide depuis les formulaires

Si l'option Ajout rapide est activée dans la configuration et que l'utilisateur dispose de la permission correspondante, une option "-- Autre (saisie libre) --" apparaît en fin de liste déroulante.

En la sélectionnant, une fenêtre de saisie s'ouvre. La nouvelle valeur est ajoutée instantanément au dictionnaire et sélectionnée dans le champ, sans rechargement de page.

Liste déroulante avec l'option Autre pour ajouter une nouvelle entrée

Valeurs hors dictionnaire

Si un champ contient déjà une valeur qui ne figure pas dans le dictionnaire associé, cette valeur est affichée en rouge dans la liste déroulante. Cela permet d'identifier les données non conformes sans les perdre.

Pour migrer les données existantes vers les valeurs d'un dictionnaire, utilisez l'outil Migration.

Modifier un dictionnaire

Cliquez sur l'icône d'édition dans la liste des dictionnaires pour modifier son code ou son libellé.

Supprimer un dictionnaire

Cliquez sur l'icône de suppression dans la liste des dictionnaires. Une confirmation est demandée. La suppression d'un dictionnaire ne modifie pas les données existantes. Si le dictionnaire était associé à un champ, vous devrez reconfigurer ce champ dans l'onglet Configuration.