WizStudio DOCS
CODER

Coder

Le langage de script, les tests rejouables et les assistants IA. Le langage est du JavaScript standard : ce qui appartient à Wiz Studio, c'est la bibliothèque de fonctions, pas le langage.

4. Langage de script

Chaque champ expose des événements (Clic, Modification, Initialisation, Ligne, LigneAjoutée, Déplacé) auxquels vous attachez du JavaScript standard.

Les fonctions de l'atelier (Fenetre, Requete, Etat, Table) forment une bibliothèque appelée depuis ce code, pas un langage à part : même syntaxe, mêmes règles, même moteur. Une bibliothèque npm compatible navigateur ajoutée au projet s'appelle de la même façon, par son nom.

Les classes du projet sont des classes JavaScript : class Client extends Personne fonctionne, à condition que la classe parente soit déclarée avant l'enfant dans la liste du projet. Le code s'exécute en bac à sable : les accès directs au navigateur et à l'évaluation dynamique (window, document, fetch, eval) sont bloqués, et la bibliothèque fournit les équivalents : Http, Fichier, Email.

Trois niveaux de portée
code d'un champ → code de la fenêtre → code global + classes du projet

Les classes du projet sont de vraies classes ES, partagées sans import.

FEN_Facture · BTN_Valider · ClicJavaScript
if (!Fiche.valide()) return
const facture = Fiche.collecter()
if (!SiretValide(facture.siret)) return Erreur('SIRET invalide')
await Table.enregistrer('factures', facture)
const pdf = await Etat.genererPdf('ETAT_Facture')
Email.envoyer('SMTP_Societe', { a: facture.email, sujet, corps, piecesJointes })
Aperçu par familles ci-dessous. Les signatures complètes, paramètres et valeurs de retour figurent dans le document « Référence du langage ».
DONNÉES
Requete.executer()
Table.enregistrer / supprimer
Table.chercher / compter
Table.rechercher()
Connexion.ouvrir()
Json, Base64, Validation.regex

INSERT ou UPDATE choisi automatiquement selon la clé. rechercher filtre sur plusieurs colonnes, trie et limite sans écrire de SQL.

FORMULAIRE
Fiche.donnees
Fiche.collecter()
Fiche.valide()

valide() pose les erreurs sur les champs obligatoires, mal formatés ou hors bornes, et renvoie false s'il reste un problème.

VALIDATEURS FR
SiretValide, SirenValide
TvaValide, IbanValide, BicValide
CodePostalValide
EmailValide, TelephoneValide
NombreValide, MontantEnLettres
TEXTE, NOMBRE, DATE
Gauche, Droite, Milieu, Trouve
Remplace, Complete
Arrondi, Min, Max, Pourcentage
FormateNombre, Somme, Moyenne
DateSys, AjoutDate, DiffDate
JoursOuvres, FormateDate, Age
UUID, MotDePasseAleatoire, Hash
INTÉGRATIONS
Http.get / post / put / delete
Email.envoyer, Sms.envoyer
Ftp, Stockage (S3, OVH, Scaleway, MinIO)
QrCode.generer, Export.csv
Fichier.lire / lireLignes / existe / lireIni
Camera, Galerie, Capteurs
PressePapiers, Imprimante
NAVIGATION ET DIVERS
Fenetre.ouvrir / fermer
ChangeFenetreInterne
NavigationMobile, AppareilMobile
Traduire, Langue.actuelle
Thread.demarrer / arreter / pause
Minuterie, Trace.ecrire, Notifier
Confirmer, Info, Erreur

Les threads exécutent un traitement en arrière-plan sans bloquer l'interface.

8. Tests automatisés

Un scénario s'enregistre en utilisant l'application normalement en mode Test : saisies, clics et vérifications. Il se rejoue ensuite en un clic, seul ou avec tous les autres, avec un rapport pass/fail détaillé étape par étape. Aucune ligne de script de test à écrire.

Lancement manuel pour l'instant : les scénarios ne sont pas encore intégrés au processus de build.

9. Assistants IA

Claude, OpenAI ou Gemini : le fournisseur se change à tout moment, et l'éditeur sélectionne au démarrage le premier pour lequel une clé est renseignée. Aucun assistant n'exécute de code automatiquement.

CODE IA
Générer et modifier

Code d'un contrôle, d'une fenêtre, d'une classe ou d'un point d'accès webservice. Le résultat est proposé dans l'éditeur, à vous de l'insérer.

DÉBOGAGE
Comprendre une erreur

Croise le code courant, les erreurs détectées, l'événement actif et les dernières traces de test pour expliquer la cause probable et suggérer la correction minimale.

MODULE ANALYSE
SQL et schéma

Requête SQL décrite en langage naturel, et chat de modification de schéma sur la base du projet.

PROJET
Fiche de compréhension

Menu Projet → Informations du projet : une synthèse automatique de ce que fait le projet, utile en reprise de code.