ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage syntax / WLanguage procedures
  • Définition
  • Procédure globale
  • Procédures globales et collections de procédures
  • Procédures globales serveur et navigateur
  • Création d'une procédure globale
  • Création depuis l'éditeur de code
  • Création depuis le volet "Explorateur de projet"
  • Afficher la liste des procédures globales
  • Suppression d'une procédure globale
  • Suppression depuis l'éditeur de code
  • Suppression depuis le volet "Explorateur de projet"
  • Test d'une procédure globale
  • Depuis l'éditeur de code
  • Depuis le volet "Explorateur de projet"
  • Procédure globale publique ou privée
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Définition
Les procédures peuvent être de deux types :
  • Procédure globale : utilisable dans tous les traitements du projet. Cette procédure globale est mémorisée dans le projet.
  • Procédure locale : utilisable dans tous les traitements dépendant de l'objet (fenêtre, page, état, champ) dans lequel cette procédure a été déclarée. Cette procédure locale est mémorisée dans l'objet.
Important : Il ne faut pas déclarer deux procédures avec le même nom (notamment une procédure globale et une procédure locale).
Rappel :
  • En WLangage, il n'existe pas de distinction entre les procédures et les fonctions. Les syntaxes de déclaration et d'utilisation décrites pour les procédures sont les mêmes pour les fonctions.
  • Il est possible de créer des procédures multisyntaxes. Pour plus de détails, consultez Surcharge de prototype.
Procédure globale
WINDEVWEBDEV - Code ServeurEtats et RequêtesUniversal Windows 10 AppAndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystJava

Procédures globales et collections de procédures

Les procédures globales sont mémorisées dans des collections de procédures, associées au projet. Chaque collection de procédures est un fichier ".WDG".
Chaque projet contient au moins une collection de procédures. Cette collection est créée par défaut lors de la création du projet.
Les procédures globales contenues dans une collection de procédures peuvent être appelées depuis tous les événements/traitements :
  • du projet,
  • de la fenêtre ou de la page (événements de la fenêtre / de la page, de ses champs et traitements des procédures locales associées),
  • de l'état (événements de l'état, de ses champs et traitements des procédures locales associées).
Conseil : Si une procédure est utilisée par une seule fenêtre ou page, il est conseillé de décrire cette procédure comme locale à la fenêtre ou à la page. La fenêtre / page est alors "indépendante".
WEBDEV - Code ServeurWEBDEV - Code Navigateur

Procédures globales serveur et navigateur

Un projet correspondant à un site dynamique contient au moins deux collections de procédures (une "serveur" et une "navigateur").
Lors de la création du projet :
  • la collection de procédures serveur par défaut a pour nom "Procédures globales de <Nom du projet>" (fichier ".WDG").
  • la collection de procédures navigateur par défaut a pour nom : "Procédures globales de <Nom du projet>_Navigateur" (fichier ".WWN").
Remarque : Une collection de procédures globale Navigateur est convertie en collection de procédures Javascript. Cette collection de procédures Javascript est enregistrée dans le répertoire "<Nom du projet>_WEB" sous le nom "<Nom du projet>.JS". Cette collection de procédures contient un code de déclaration et un code de terminaison permettant par exemple de déclarer des variables globales à la collection de procédures.
Limite : Les procédures globales serveur ne peuvent pas appeler des procédures globales navigateur et inversement.
Création d'une procédure globale

Création depuis l'éditeur de code

Pour créer une procédure globale depuis l'éditeur de code :
  • Méthode 1 :
    • Affichez l'éditeur de code (touche F2 sur un élément de votre fenêtre ou de votre page).
    • Sous le volet "Code", dans le groupe "Procédures", déroulez "Nouveau" et sélectionnez "Nouvelle procédure globale" (raccourci clavier Shift F4).
    • Dans la fenêtre qui s'affiche :
      • Indiquez le nom de la procédure à créer.
      • L'option "Générer un commentaire d'en-tête" permet de générer automatiquement le commentaire du prototype de la procédure.
        Pour plus de détails, consultez Documentation automatique des procédures.
      • Indiquez la portée de la procédure. Par défaut, la procédure créée est publique. Pour plus de détails, consultez le paragraphe Procédure globale publique ou privée.
  • Méthode 2 :
    • Affichez l'éditeur de code (touche F2 sur un élément de votre fenêtre ou de votre page).
    • Sélectionnez l'option "Nouveau .. Nouvelle procédure globale vide" du menu contextuel.
    • Dans la fenêtre qui s'affiche :
      • Indiquez le nom de la procédure à créer.
      • L'option "Générer un commentaire d'en-tête" permet de générer automatiquement le commentaire du prototype de la procédure.
        Pour plus de détails, consultez Documentation automatique des procédures.
      • Indiquez la portée de la procédure. Par défaut, la procédure créée est publique. Pour plus de détails, consultez le paragraphe Procédure globale publique ou privée.
  • Méthode 3 :
    • Affichez l'éditeur de code (touche F2 sur un élément de votre fenêtre ou de votre page).
    • Positionnez-vous à la fin du code d'une procédure.
    • Tapez le prototype de la procédure à créer.
    • Validez. La procédure est automatiquement créé.
WEBDEV - Code ServeurWEBDEV - Code Navigateur Remarques :
  • Si le code en cours est un code serveur, la procédure globale est créée dans la collection de procédures serveur. Si le code en cours est un code navigateur, la procédure globale est créée dans la collection de procédures navigateur.
  • Pour créer directement une procédure globale serveur, sous le volet "Code", dans le groupe "Procédures", déroulez "Nouveau" et sélectionnez "Nouvelle procédure globale (Serveur)".
  • Pour créer directement une procédure globale navigateur, sous le volet "Code", dans le groupe "Procédures", déroulez "Nouveau" et sélectionnez "Nouvelle procédure globale (Navigateur)".
Pour transformer une partie de code déjà saisi dans une procédure globale en une procédure globale :
  1. Sélectionnez le code correspondant.
  2. Utilisez l'option "Nouveau .. Créer une procédure globale contenant le code sélectionné" du menu contextuel.
  3. Indiquez :
    • le nom de la procédure.
    • la portée de la procédure. Par défaut, la procédure créée est publique. Pour plus de détails, consultez le paragraphe Procédure globale publique ou privée.
  4. La procédure est créée, le code correspondant est remplacé par l'appel de la procédure avec les paramètres nécessaires.

Création depuis le volet "Explorateur de projet"

Pour créer une procédure globale depuis le volet "Explorateur de projet" :
  1. Sélectionnez le dossier "Procédures".
  2. Sélectionnez la collection de procédures voulue.
  3. Affichez le menu contextuel de la collection de procédures et sélectionnez l'option "Nouvelle procédure globale".
  4. Dans la fenêtre qui s'affiche :
    • Indiquez le nom de la nouvelle procédure globale.
    • L'option "Générer un commentaire d'en-tête" permet de générer automatiquement le commentaire du prototype de la procédure.
      Pour plus de détails, consultez Documentation automatique des procédures.
    • Indiquez la portée de la procédure. Par défaut, la procédure créée est publique. Pour plus de détails, consultez le paragraphe Procédure globale publique ou privée.
  5. Validez.
WEBDEV - Code ServeurWEBDEV - Code Navigateur Pour créer une procédure globale serveur ou navigateur, sélectionnez la collection de procédures correspondante.

Afficher la liste des procédures globales

Pour afficher la liste des procédures globales, utilisez la combinaison de touches Ctrl + F8 de l'éditeur de code.
Les procédures globales sont affichées dans le volet "Explorateur de projet" si ce volet est affiché.
WEBDEV - Code Navigateur Remarque : Pour afficher la liste des procédures globales navigateur, utilisez la combinaison de touches Ctrl + Alt + F8 de l'éditeur de code.
Suppression d'une procédure globale

Suppression depuis l'éditeur de code

Pour supprimer une procédure globale depuis l'éditeur de code :
  1. Cliquez sur le bandeau de la procédure dans l'éditeur de code.
  2. Dans le menu contextuel, sélectionnez "Supprimer".

Suppression depuis le volet "Explorateur de projet"

Pour supprimer une procédure globale depuis le volet "Explorateur de projet" :
  1. Sélectionnez le dossier "Procédures".
  2. Sélectionnez la collection de procédures voulue.
  3. Affichez le menu contextuel de la collection de procédures et sélectionnez l'option "Supprimer".
WEBDEV - Code ServeurWEBDEV - Code Navigateur Pour supprimer une procédure globale serveur ou navigateur, sélectionnez la collection de procédures correspondante.
Test d'une procédure globale

Depuis l'éditeur de code

Pour tester une procédure globale :
  1. Affichez la procédure globale sous l'éditeur de code.
  2. Cliquez sur le bouton "GO" présent parmi les boutons d'accès rapide.
  3. La fenêtre de description du test de la procédure s'affiche. Cette fenêtre permet de :
    • Saisir les différents paramètres de la procédure.
    • Lancer le test de la procédure (bouton "Tester la procédure").
    • Vérifier la valeur de retour.

Depuis le volet "Explorateur de projet"

Pour tester une procédure globale :
  1. Sélectionnez le dossier "Procédures" dans le volet "Explorateur de projet".
  2. Sélectionnez le nom de la procédure globale à tester.
  3. Sélectionnez l'option "Tester la procédure" du menu contextuel.
  4. La fenêtre de description du test de la procédure s'affiche. Cette fenêtre permet de :
    • Saisir les différents paramètres de la procédure.
    • Lancer le test de la procédure (bouton "Tester la procédure").
    • Vérifier la valeur de retour.
Procédure globale publique ou privée
Une procédure globale est publique par défaut : elle est accessible depuis n'importe quel code.
Dans certains cas, il est nécessaire de restreindre l'accès à une procédure globale en la rendant "Privée". Dans ce cas, la procédure globale et accessible uniquement par une autre procédure globale présente dans la collection de procédures.
Lors de la création d'une procédure globale, il est possible de spécifier si la procédure est publique ou privée.
Pour modifier le mode d'accès à une procédure globale :
  1. Sélectionnez la procédure globale dans le volet "Explorateur de projet".
  2. Dans le menu contextuel de la procédure, sélectionnez le nouveau mode d'accès :
    • publique.
    • privé.
La couleur du bandeau de la procédure change en fonction de son mode d'accès :
  • début de bandeau rouge : procédure privée.
  • début de bandeau habituel : procédure publique.
Remarque : Composant externe et procédures globales privées :
L'utilisation de procédures globales privées ou publiques a un impact notamment dans les composants externes. En effet, seules les procédures explicitement privées (utilisant le mot-clé PRIVEE dans leur prototype) présentes dans un composant externe ne pourront pas être utilisées directement par le projet intégrant ce composant.
Minimum version required
  • Version 12
Comments
Click [Add] to post a comment

Last update: 04/18/2023

Send a report | Local help