Aller au contenu principal

Première application pas à pas

Cette page part d'une installation vide pour aboutir à une application opérationnelle — une entrée du menu latéral qui ouvre une grille sur une table, avec un dialogue de modification. Tout se fait depuis les Paramètres (superutilisateur), sans aucune modification manuelle de fichier.

Quatre éléments, dans l'ordre — pool → connecteur → écran → menu — chacun enregistré et appliqué aussitôt.


Vue d'ensemble​

D'une installation vide à une entrée de menu utilisable — quatre étapes1 · POOLconnexion base de données2 · CONNECTEURrequêtes SQL nommées3 · ÉCRANgrille + dialogue de modification4 · MENUentrée du menu latéral

L'exemple utilise le pool default et une petite table tasks.


Étape 1 — Le pool​

Ouvrir Liberty Next → Administrer → Pools. L'installation a créé le pool default : sur une installation Docker, il pointe vers la base PostgreSQL fournie ; sur une installation Python sans PostgreSQL, vers un fichier SQLite local. Il suffit pour ce parcours. Pour travailler sur une autre base, ajouter un pool avec son URL — voir Connecteurs.

Créer la table d'exemple avec n'importe quel client SQL connecté à cette base :

CREATE TABLE tasks (
id INTEGER PRIMARY KEY,
title VARCHAR(200) NOT NULL,
status VARCHAR(10) NOT NULL DEFAULT 'open',
due_date DATE
);
INSERT INTO tasks (id, title, status, due_date) VALUES
(1, 'Préparer le plan de sprint', 'open', '2026-06-10'),
(2, 'Relire la pull request 42', 'done', '2026-06-05'),
(3, 'Relancer le client', 'open', '2026-06-12');

Étape 2 — Le connecteur et ses requêtes​

  1. Liberty Next → Construire → Connecteurs → + Connecteur : nom tasks, type SQL, pool default. Enregistrer.
  2. Avec tasks sélectionné, choisir Tables dans la barre de modes, puis + Ajouter des requêtes → Générer depuis la BDD.
  3. Dans l'assistant CRUD, choisir la table tasks, garder toutes les colonnes, cocher clé sur ID et conserver les quatre instructions (SELECT, UPDATE, INSERT, DELETE).
  4. Enregistrer. Le connecteur contient désormais tasks_get, tasks_put, tasks_post et tasks_delete :
SELECT ID, TITLE, STATUS, DUE_DATE FROM tasks
UPDATE tasks SET TITLE = :TITLE, STATUS = :STATUS, DUE_DATE = :DUE_DATE WHERE ID = :ID_ORIGINAL

Les colonnes sont lues dans la base à l'exécution de la requête ; rien d'autre n'est à déclarer. Voir Créer depuis une table de la base.


Étape 3 — L'écran​

  1. Liberty Next → Construire → Écrans → + Ajouter une portée, choisir tasks : la pastille tasks apparaît.
  2. + Ajouter un écran, identifiant tasks. Cliquer sur la nouvelle carte pour ouvrir l'éditeur d'écran.
  3. Onglet Général : libellé Tâches ; cocher Editable pour la saisie dans la grille.
  4. Onglet Requêtes : lecture tasks_get, mise à jour tasks_put, insertion tasks_post, suppression tasks_delete.
  5. Onglet Dialogue : glisser les colonnes sur le formulaire.
  6. Enregistrer.

Les colonnes de la grille viennent de la requête de lecture ; leurs libellés et formats, du dictionnaire quand des entrées existent (son bouton Scan a table les propose). L'Assistant de création d'écran réalise les étapes 2 et 3 en une fois pour une table.


  1. Liberty Next → Construire → Menus → + Ajouter une portée, choisir tasks : l'arborescence vide de l'application apparaît.
  2. + Élément, puis dans l'inspecteur : libellé Tâches, type screen, cible tasks_get (l'écran construit dessus), icône table.
  3. Enregistrer.

Maintenant doté d'un menu, tasks est une application : il apparaît dans le sélecteur d'application, et son menu latéral affiche Tâches. Un clic ouvre la grille : une ligne ouvre le dialogue de modification, + Ajouter un dialogue vide. Voir Construire l'arbre et Transformer un connecteur en application.


Résultat​

  • Un pool — la connexion à la base.
  • Un connecteur — les quatre requêtes sur la table.
  • Un écran — la grille et le dialogue sur ces requêtes.
  • Un menu — l'entrée qui ouvre l'écran, et qui fait du connecteur une application.

Chaque enregistrement s'est appliqué sans redémarrage. Le pool et le connecteur sont enregistrés dans connectors.toml, l'écran dans screens.toml, le menu dans menus.toml.


Pour aller plus loin​