DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Nouveauté WINDEV 28 !
  • Ce que vous allez apprendre dans cette leçon
  • Présentation
  • Exemple
Leçon 7.4. Compilation dynamique
Ce que vous allez apprendre dans cette leçon
  • Présentation.
  • Tracer une courbe en compilation dynamique.
Durée de la leçon

Durée estimée : 20 mn
Leçon précédenteSommaireLeçon suivante
Présentation
La compilation dynamique permet de compiler un code à n'importe quel moment de l'application. Un exemple d'utilisation courant ? Votre application contient une formule paramétrable. Pour changer les paramètres, il n'est pas nécessaire de re-livrer l'exécutable : la modification d'un fichier texte suffit.
Exemple
Nous avons choisi de vous présenter la compilation dynamique grâce à l'exemple unitaire "Compilation dynamique".
La fenêtre "Compilation dynamique" montre comment compiler dynamiquement du code WLangage (stocké sous forme de chaîne), exécuter la procédure générée dynamiquement et traiter les éventuelles erreurs d'exécution.
  • Pour tester cette fenêtre :
    1. Ouvrez l'exemple unitaire "Compilation dynamique".
    2. Lancez le test de la fenêtre "FEN_COMPILATION_DYNAMIQUE".
    3. Cliquez sur les différents boutons "Exécuter" pour voir les différents cas proposés.
    4. Arrêtez le test.
  • Retournons sous l'éditeur de code pour étudier le code du premier champ Bouton "Exécuter".
    1. Affichez le code du champ Bouton "Exécuter" (clic droit sur le champ, option "Code"). Ce code appelle la procédure CompileCodeDynamique.
    2. Positionnez le curseur de la souris sur le nom de la procédure et utilisez la touche F2. Le code WLangage de la procédure apparaît automatiquement sous l'éditeur de code.
      Le code de cette procédure peut être décomposé en plusieurs parties :
      1. Initialisation des variables.
      2. Compilation du code.
        sRésultatCompilation = Compile(PROCEDURE_DYNAMIQUE, SAI_CODE_COMPIL)
        Ce code contient plusieurs points à remarquer :
        • La compilation de la fonction est effectuée avec la fonction WLangage Compile. Dès que cette fonction est appelée (et si aucune erreur n'est renvoyée), la fonction compilée dynamiquement devient utilisable.
        • Cette fonction admet deux paramètres : le nom de la procédure compilée (ici "PROCEDURE_DYNAMIQUE") et le code à compiler. Ici, le code à compiler est contenu dans le champ de saisie SAI_CODE_COMPIL.
        • Le résultat de la compilation est affecté à une chaîne sRésultatCompilation.
      3. Vérification du résultat de la compilation.
        // Vérifie le résultat de la compilation
        SELON sRésultatCompilation
        // Aucune erreur
        CAS ""
        bRésultatCompilation = Vrai
        LIB_ERREUR_CODE_COMPILE = ""
         
        // Erreur fatale de compilation
        CAS "ERR"
        bRésultatCompilation = Faux
        LIB_ERREUR_CODE_COMPILE = ErreurInfo()
        // Code incorrect
        AUTRE CAS
        bRésultatCompilation = Faux
        LIB_ERREUR_CODE_COMPILE = sRésultatCompilation
        FIN
    3. Utilisez la combinaison de touches Ctrl + F2. L'événement "Clic" du champ Bouton "Exécuter" réapparaît sous l'éditeur de code. Dans la suite de ce code, vous pouvez voir que la fonction compilée dynamiquement est exécutée grâce à la fonction Exécute.
Leçon précédenteSommaireLeçon suivante
Version minimum requise
  • Version 28
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire