BERKIOSDocs
Code (.bk)

Code : interfaces et modèles de données

Cet exemple décrit une petite gestion de stock : un modèle (la forme des données), une interface avec un tableau, et un formulaire modal.

langue français

application "Gestion de stock"
  version 1.0
  description "Suivi simple des produits"
  type interface
  plateformes windows, macos, linux, android
  édition pro

modèle Produit
  sku : texte, unique, obligatoire
  nom : texte, obligatoire
  quantité : nombre entier, minimum 0
  prix : montant

interface Accueil
  titre "Produits en stock"
  taille 1280 sur 720
  fond #f8fafc

  panneau en-tête
    disposition ligne
    étiquette titre "Produits en stock"
      taille du texte 26
      gras
    bouton ajouter "Ajouter un produit"
      quand on clique : ouvrir Formulaire produit

  tableau liste
    source : Produit
    colonnes : sku, nom, quantité, prix

interface Formulaire produit
  affichage modale
  titre "Nouveau produit"

  champ sku "Référence"
    obligatoire
  champ nom "Nom du produit"
    obligatoire
  champ quantité "Quantité"
    format nombre
    minimum 0
  bouton enregistrer "Enregistrer"
    quand on clique : envoyer le formulaire
  bouton annuler "Annuler"
    quand on clique : fermer

Comment ça marche

  • Le modèle déclare les champs et leurs règles : obligatoire, unique, minimum, types (texte, nombre entier, montant…).
  • Le tableau se lie au modèle avec source : Produit.
  • Un formulaire valide la ligne selon le modèle (obligatoire, minimum, unicité) avant de l'ajouter au tableau.
  • quand on clique : ouvrir … change d'interface ; fermer revient en arrière.

Actions disponibles dans l'aperçu

Ouvrir / fermer une interface, afficher un message, montrer / cacher / basculer un composant, envoyer ou vider le formulaire, appeler une API.

Limites à connaître

  • Dans l'aperçu navigateur, les données restent dans le navigateur (localStorage). Le bouton « Réinitialiser les données » les efface. Ce n'est pas la persistance SQLite des applications générées.
  • Les actions Excel ne fonctionnent pas dans un navigateur.
  • Le rendu n'est pas garanti identique à celui de Flutter : testez toujours l'application générée.