# Dictionnaire

Il permet la manipulation de données structurées, offrant une plus grande flexibilité pour stocker et récupérer des informations avec des filtres et des paramètres spécifiques.

Avec lui, il est possible d'ajouter de nouveaux enregistrements au dictionnaire, de modifier des données existantes, de supprimer des enregistrements, de rechercher des informations par ID et d'effectuer des requêtes avancées en filtrant plusieurs critères.

### 📂 **Opérations disponibles**

Voici les opérations qui peuvent être effectuées avec ce composant :

| **Opération**                               | **Description**                                           |
| ------------------------------------------- | --------------------------------------------------------- |
| **Créer (create)**                          | Ajoute un nouvel enregistrement au dictionnaire.          |
| **Mettre à jour (update)**                  | Modifie les données d'un enregistrement existant.         |
| **Supprimer (delete)**                      | Supprime un enregistrement du dictionnaire.               |
| **Rechercher par ID (get\_by\_id)**         | Obtient les détails d'un enregistrement spécifique.       |
| **Rechercher par filtre (get\_by\_filter)** | Obtient une liste d'enregistrements filtrés par critères. |

### 📑 **Variables utilisées dans le composant**

Ci-dessous se trouvent les variables utilisées dans le composant **Dictionnaire**, y compris leurs types de données et l'obligation de remplissage.

| **Champ**                     | **Type de donnée** | **Obligatoire ?** | **Description**                                                                                                                   |
| ----------------------------- | ------------------ | ----------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| **ID de l'espace de travail** | `chaîne`           | ✅ Oui             | ID de l'espace de travail où se trouve la table du dictionnaire.                                                                  |
| **Nom de la table**           | `chaîne`           | ✅ Oui             | Identifiant de la table dans le dictionnaire où les données sont stockées.                                                        |
| **ID de l'enregistrement**    | `chaîne`           | ❌ Non             | Identifiant unique de l'enregistrement dans le dictionnaire. Nécessaire pour les opérations qui manipulent un élément spécifique. |
| **Champs (JSON)**             | `objet`            | ✅ Oui             | Structure contenant les données de l'enregistrement à créer ou à mettre à jour.                                                   |
| **Méthode de Filtre**         | `chaîne`           | ❌ Non             | Définit si la recherche par filtre sera effectuée en utilisant les champs du dictionnaire ou via une requête directe.             |
| **Paramètres de Filtre**      | `objet`            | ❌ Non             | Structure contenant les filtres appliqués pour la requête au dictionnaire.                                                        |
| **Tri**                       | `chaîne`           | ❌ Non             | Définit le critère de tri des enregistrements retournés.                                                                          |
| **Direction du Tri**          | `chaîne`           | ❌ Non             | Indique si le tri sera ascendant (`asc`) ou descendant (`desc`).                                                                  |
| **Pagination (Page)**         | `nombre`           | ❌ Non             | Numéro de la page à récupérer dans la recherche par filtre.                                                                       |
| **Pagination (Limite)**       | `nombre`           | ❌ Non             | Nombre maximal d'enregistrements à retourner par page.                                                                            |

### 🎯 **Comment configurer une opération**

#### 1️⃣ **Accédez au composant**

1. Dans **Hablla Studio**, ouvrez le flux d'automatisation où vous souhaitez inclure l'action.
2. Ajoutez le bloc **« Dictionnaire »**.
3. Dans **panneau latéral droit**, sélectionnez l'opération souhaitée.

#### 2️⃣ **Remplissez les champs obligatoires**

Selon l'opération choisie, certains champs sont obligatoires. Consultez le tableau des variables ci-dessus pour comprendre quelles données doivent être renseignées pour chaque opération.

#### 3️⃣ **Enregistrer la configuration**

Après avoir rempli les champs, cliquez sur le bouton **"Enregistrer"** ✅.

Dorénavant, chaque fois que cette automatisation sera déclenchée, les enregistrements du dictionnaire seront gérés conformément à la configuration définie.

### 📝 **Détail des opérations**

Chaque opération possède des champs obligatoires et optionnels qui doivent être remplis selon le cas. Ci-dessous, nous détaillerons chacune d'entre elles :

1️⃣ **Créer un enregistrement dans le dictionnaire**\
2️⃣ **Mettre à jour un enregistrement dans le dictionnaire**\
3️⃣ **Supprimer un enregistrement du dictionnaire**\
4️⃣ **Rechercher un enregistrement par ID**\
5️⃣ **Rechercher des enregistrements par filtre**

🚀 **Poursuivez vers les sujets suivants pour configurer correctement chaque opération !**
