/
Gestion des tables

Gestion des tables

Une table dynamique (ou “index”) est un objet complexe, faisant manipuler de nombreuses notions.

Gestion des colonnes

La table est composée de colonnes “statiques” et de colonnes “dynamiques” (nommées “cibles”).

Les colonnes statiques sont au nombre de trois :

  • Une colonne de “clef”. Chaque ligne en possède nécessairement une, et permet de l’identifier au sein de la table : elle doit donc être unique.

  • Une colonne de date de création. Ne peut pas être modifiée.

  • Une colonne de date de dernière modification. Ne peut pas être modifiée.

Les deux colonnes de dates sont cachées par défaut. Vous pouvez les afficher en les sélectionnant après avoir cliqué sur le bouton orange “Colonnes” en haut à droite.

Pour ce qui est des cibles, il vous faut les créer et les gérer.

Création d’une cible

En cliquant sur le bouton gris “+ Ajouter une cible”, vous pourrez faire apparaître un dialogue permettant la création de la cible.

image-20250227-103749.png
IHM présentant un index nouvellement créé. Un message vous informe que vous n’avez aucune cible.

La cible, comme les indexes et les datasources, possède un identifiant et un nom. L’identifiant doit être unique au sein de l’index.

Elle possède aussi un type. Attention, ni le type ni l’identifiant ne pourront changer après la création de la cible.

Il n’est pas possible d’avoir deux cibles ayant le même identifiant, à la casse près. Par exemple “Legacy” et “legacy”. Seule l’une de ces deux cibles pourra exister.

Types de cibles existants

Nom

Explications

Notes

Nom

Explications

Notes

Texte

Texte basique. L'éditeur intégré vous présentera un champ basique.

Supporte la validation par expressions régulières.

Entier

Un nombre entier.

-

Nombre

Un nombre décimal.

-

Booléen

Une valeur booléenne, soit vrai soit faux.

Ne supporte pas les contraintes.

Date

Une date. L'éditeur affichera un sélecteur spécifique.

-

Date et heure

Une date et une heure. L'éditeur affichera un sélecteur spécifique.

-

Référence

Une référence vers une colonne d’un autre index.

Voir Type de colonne: liste de références

Modification des cibles

Maintenant que vos cibles existes, il est possible de les modifier. Pour afficher le menu, cliquez sur le bouton correspondant.

image-20250227-104539.png
Dialogue de modification des cibles

Vous pourrez ici :

  • Modifier le nom de la cible. Pour cela, double-cliquez sur nom à éditer.

  • Modifier les différentes contraintes de chaque cible (colonnes “Regex”, “Clef fonc.”, “Unique”, “Nullable”).

  • Réorganiser les colonnes. Pour cela, cliquez sur les flèches haut/bas dans la colonne “Actions”.

  • Supprimer une cible. Cliquez sur le bouton “poubelle” rouge à droite de chaque cible. Un pop vous demandera de confirmer votre choix.

Contraintes des cibles

Explication des diverses contraintes de cible.

Contrainte d’expression régulière

Objectif: Valider le contenu textuel des valeurs de la colonne.

Pour créer ou modifier une expression régulière, cliquez sur le bouton dans la colonne “Regex”. Une dialogue s’ouvrira, vous permettant de modifier l’expression. Une expression régulière invalide ne pourra pas être acceptée.

image-20250311-133133.png
Dialogue de modification de contrainte de regex

Note: seules les cibles ayant un type “Texte” peuvent avoir une contrainte de regex.

Le champ “Test de regex” apparaît une fois une regex valide sauvegardées. Il permet de tester une valeur sur la regex plus haut. Dans cet exemple, tester la valeur “0ab” affichera une erreur, alors que “abc” affichera un succès.

Contrainte de clef fonctionnelle

Objectif: Garantir l’unicité des lignes, via une contrainte sur plusieurs colonnes.

En cochant les boutons de la colonne “Regex”, les cibles feront partie de la clef fonctionnelle.

Attention : pour la conception de votre table, veuillez noter qu’un maximum de 4 colonnes peuvent participer à la clef fonctionnelle.

Contrainte d’unicité

Objectif: Garantir l’unicité des valeurs de la colonne.

En cochant le bouton de la colonne “Unique”, la colonne devient alors “Unique”. Toute valeur de la colonne devra être unique, sans quoi la valeur ne sera pas acceptée.

On notera qu’une colonne peut être unique et participer à la clef fonctionnelle.

Attention : les valeurs nulles ne seront pas prise en compte par la validation d’unicité. Cela s’applique aussi pour la clef fonctionnelle.

Contrainte de nullité

Objectif: garantir que les valeurs ne peuvent pas être nulles.

Par défaut, les colonnes acceptent des valeurs vides. En décochant le bouton de la colonne “Nullable”, alors les lignes ayant des valeurs vide dans la colonne en question ne seront plus acceptées.

 

Attention: pour toutes ces contraintes, la créer alors que les valeurs ne le permettent pas est impossible. Ainsi, il vous est conseillé de d’abord créer les contraintes, et d’ensuite seulement importer des données.

Gérer les lignes

Maintenant que des colonnes existent, insérer des lignes propose un intérêt.

Préfixe d’auto-incrément

Il est possible de créer un ligne sans préciser de clef. Dans ce cas, la clef sera auto-générée, avec un nombre entier.

Le préfixe d’auto-incrément est utile dans ce genre de situation. Il va ajouter une chaîne de caractère de votre choix à ce nombre. Par exemple, avec un préfixe mis à “PR/”, les clef générées ne seront plus 0, 1,… mais PR/0, PR/1, …

Ajouter une ligne

Par l’IHM, ajouter une ligne est très simple. Ouvrez le dialogue correspondant en cliquant sur le bouton “+ Ajouter une ligne“.

image-20250227-111110.png
Dialogue de création d’une nouvelle ligne

Le dialogue ainsi ouvert vous proposera une entrée par cible. Les contraintes posées sur ces dernières sont affichées, et devront être respectées.

Related content

Ce contenu est soumis au droit à Copyright. Il ne doit pas être utilisé sans accord de la société Middleware Editions.