PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Présentation
  • Procédure locale
  • Procédures locales à une page
  • Procédures locales à un état
  • Procédures locales à un champ
  • Création d'une procédure locale
  • Création depuis l'éditeur de code
  • Création depuis le volet "Explorateur de projet"
  • Afficher la liste des procédures locales
  • Suppression d'une procédure locale
  • Procédure locale publique ou privée
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Présentation
Les procédures peuvent être de deux types :
  • Procédure globale : utilisable dans tous les traitements/événements du projet. Cette procédure globale est mémorisée dans le projet.
  • Procédure locale : utilisable dans tous les traitements/événements dépendant de l'objet (fenêtre, page, état ou champ) dans lequel cette procédure a été déclarée. Cette procédure locale est mémorisée dans l'objet.
    Versions 26 et supérieures
    A partir de la version 26, il est possible de créer des procédures locales aux champs (d'une fenêtre ou d'un état).
    Nouveauté 26
    A partir de la version 26, il est possible de créer des procédures locales aux champs (d'une fenêtre ou d'un état).
    A partir de la version 26, il est possible de créer des procédures locales aux champs (d'une fenêtre ou d'un état).
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.
  • Versions 16 et supérieures
    Il est possible de créer des procédures multisyntaxes. Pour plus de détails, consultez Surcharge de prototype.
    Nouveauté 16
    Il est possible de créer des procédures multisyntaxes. Pour plus de détails, consultez Surcharge de prototype.
    Il est possible de créer des procédures multisyntaxes. Pour plus de détails, consultez Surcharge de prototype.
Procédure locale
WEBDEV - Code ServeurWEBDEV - Code Navigateur

Procédures locales à une page

Les procédures locales déclarées dans une page peuvent être appelées depuis tous les traitements/événements :
  • de la page,
  • des champs de la page,
  • des procédures locales associées à la page.
Ces procédures sont mémorisées dans la page.
Il est possible de déclarer dans une page :
  • des procédures locales serveur. Ce type de procédure locale contient du code WLangage qui sera exécuté sur le serveur.
  • des procédures locales navigateur. Ce type de procédure locale contient du code WLangage qui sera exécuté sur le navigateur.
  • Versions 24 et supérieures
    des procédures locales mixtes. Ce type de procédure peut s'exécuter à la fois sur le serveur et sur le navigateur. Le code de cette procédure doit être compatible (il doit fonctionner à la fois sur le serveur ET sur le navigateur).
    Nouveauté 24
    des procédures locales mixtes. Ce type de procédure peut s'exécuter à la fois sur le serveur et sur le navigateur. Le code de cette procédure doit être compatible (il doit fonctionner à la fois sur le serveur ET sur le navigateur).
    des procédures locales mixtes. Ce type de procédure peut s'exécuter à la fois sur le serveur et sur le navigateur. Le code de cette procédure doit être compatible (il doit fonctionner à la fois sur le serveur ET sur le navigateur).
Limite : Les procédures locales serveur d'une page ne peuvent pas appeler des procédures locales navigateur d'une page et inversement.
Versions 24 et supérieures
Remarque : Procédure locale mixte : Ce type de procédure peut s'exécuter à la fois sur le serveur et sur le navigateur. Le code de cette procédure doit être compatible (il doit fonctionner à la fois sur le serveur ET sur le navigateur).
Pour utiliser un code spécifique serveur et/ou un code spécifique navigateur, il est possible d'utiliser la syntaxe suivante :
<SI Navigateur>
// Code à exécuter uniquement sur le navigateur
<FIN>
<SI Serveur>
// Code à exécuter uniquement sur le serveur
<FIN>
Nouveauté 24
Remarque : Procédure locale mixte : Ce type de procédure peut s'exécuter à la fois sur le serveur et sur le navigateur. Le code de cette procédure doit être compatible (il doit fonctionner à la fois sur le serveur ET sur le navigateur).
Pour utiliser un code spécifique serveur et/ou un code spécifique navigateur, il est possible d'utiliser la syntaxe suivante :
<SI Navigateur>
// Code à exécuter uniquement sur le navigateur
<FIN>
<SI Serveur>
// Code à exécuter uniquement sur le serveur
<FIN>
Remarque : Procédure locale mixte : Ce type de procédure peut s'exécuter à la fois sur le serveur et sur le navigateur. Le code de cette procédure doit être compatible (il doit fonctionner à la fois sur le serveur ET sur le navigateur).
Pour utiliser un code spécifique serveur et/ou un code spécifique navigateur, il est possible d'utiliser la syntaxe suivante :
<SI Navigateur>
// Code à exécuter uniquement sur le navigateur
<FIN>
<SI Serveur>
// Code à exécuter uniquement sur le serveur
<FIN>
WEBDEV - Code ServeurWindows

Procédures locales à un état

Les procédures locales déclarées dans un état peuvent être appelées depuis tous les traitements/événements :
  • de l'état,
  • des champs de l'état,
  • des procédures locales associées à l'état.
Ces procédures sont mémorisées dans l'état.
Versions 26 et supérieures

Procédures locales à un champ

Les procédures locales déclarées dans un champ peuvent être appelées depuis tous les traitements/événements :
  • du champ,
  • des procédures locales associées au champ.
Ces procédures sont mémorisées avec le champ. Lors de la copie du champ, les procédures locales associées au champ seront copiées.
Une procédure locale à un champ peut être créée pour un champ d'une fenêtre, d'une page ou d'un état.
WEBDEV - Code ServeurWEBDEV - Code Navigateur Seules les procédures "serveur" locales à un champ sont disponibles. Il n'est pas possible de créer une procédure navigateur locale à un champ.
Nouveauté 26

Procédures locales à un champ

Les procédures locales déclarées dans un champ peuvent être appelées depuis tous les traitements/événements :
  • du champ,
  • des procédures locales associées au champ.
Ces procédures sont mémorisées avec le champ. Lors de la copie du champ, les procédures locales associées au champ seront copiées.
Une procédure locale à un champ peut être créée pour un champ d'une fenêtre, d'une page ou d'un état.
WEBDEV - Code ServeurWEBDEV - Code Navigateur Seules les procédures "serveur" locales à un champ sont disponibles. Il n'est pas possible de créer une procédure navigateur locale à un champ.

Procédures locales à un champ

Les procédures locales déclarées dans un champ peuvent être appelées depuis tous les traitements/événements :
  • du champ,
  • des procédures locales associées au champ.
Ces procédures sont mémorisées avec le champ. Lors de la copie du champ, les procédures locales associées au champ seront copiées.
Une procédure locale à un champ peut être créée pour un champ d'une fenêtre, d'une page ou d'un état.
WEBDEV - Code ServeurWEBDEV - Code Navigateur Seules les procédures "serveur" locales à un champ sont disponibles. Il n'est pas possible de créer une procédure navigateur locale à un champ.
Création d'une procédure locale

Création depuis l'éditeur de code

Pour créer une procédure locale à l'élément en cours depuis l'éditeur de code :
  • Méthode 1 :
    • WEBDEV - Code Serveur Pour créer une procédure locale serveur à une page ou à un champ d'une page : sous le volet "Code", dans le groupe "Procédures", déroulez "Nouveau" et sélectionnez "Nouvelle procédure locale (Serveur)".
    • WEBDEV - Code Navigateur Pour créer une procédure locale navigateur à une page : sous le volet "Code", dans le groupe "Procédures", déroulez "Nouveau" et sélectionnez "Nouvelle procédure locale (Navigateur)".
    • Dans la fenêtre qui s'affiche :
      • Indiquez le nom de la procédure à créer.
      • Versions 21 et supérieures
        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.
        Nouveauté 21
        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.
        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.
      • Versions 24 et supérieures
        Indiquez le rôle de la procédure : Non défini, Métier, UI. Par défaut, une procédure a un rôle "Non défini".
        Nouveauté 24
        Indiquez le rôle de la procédure : Non défini, Métier, UI. Par défaut, une procédure a un rôle "Non défini".
        Indiquez le rôle de la procédure : Non défini, Métier, UI. Par défaut, une procédure a un rôle "Non défini".
      • Versions 26 et supérieures
        Si l'éditeur de code affiche le code d'un champ, l'option "Créer la procédure au niveau du champ" permet de spécifier si la procédure locale doit être associée au champ ou non.
        Nouveauté 26
        Si l'éditeur de code affiche le code d'un champ, l'option "Créer la procédure au niveau du champ" permet de spécifier si la procédure locale doit être associée au champ ou non.
        Si l'éditeur de code affiche le code d'un champ, l'option "Créer la procédure au niveau du champ" permet de spécifier si la procédure locale doit être associée au champ ou non.
    • Cliquez sur le bouton "Ajouter". La procédure locale est créée. Par défaut, la procédure créée est publique. Pour plus de détails, consultez le paragraphe Procédure locale publique ou privée.
  • Méthode 2 :
    • WEBDEV - Code Serveur Pour créer une procédure locale serveur, sélectionnez l'option "Nouveau .. Nouvelle procédure locale (Serveur)".
    • WEBDEV - Code Navigateur Pour créer une procédure locale navigateur, sélectionnez l'option "Nouveau .. Nouvelle procédure locale (Navigateur)".
    • Dans la fenêtre qui s'affiche :
      • Indiquez le nom de la procédure à créer.
      • Versions 21 et supérieures
        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.
        Nouveauté 21
        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.
        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.
      • Versions 24 et supérieures
        Indiquez le rôle de la procédure : Non défini, Métier, UI. Par défaut, une procédure a un rôle "Non défini".
        Nouveauté 24
        Indiquez le rôle de la procédure : Non défini, Métier, UI. Par défaut, une procédure a un rôle "Non défini".
        Indiquez le rôle de la procédure : Non défini, Métier, UI. Par défaut, une procédure a un rôle "Non défini".
      • Versions 26 et supérieures
        Si l'éditeur de code affiche le code d'un champ, l'option "Créer la procédure au niveau du champ" permet de spécifier si la procédure locale doit être associée au champ ou non.
        Nouveauté 26
        Si l'éditeur de code affiche le code d'un champ, l'option "Créer la procédure au niveau du champ" permet de spécifier si la procédure locale doit être associée au champ ou non.
        Si l'éditeur de code affiche le code d'un champ, l'option "Créer la procédure au niveau du champ" permet de spécifier si la procédure locale doit être associée au champ ou non.
    • Cliquez sur le bouton "Ajouter". La procédure locale est créée. Par défaut, la procédure créée est publique. Pour plus de détails, consultez le paragraphe Procédure locale publique ou privée.
  • Versions 22 et supérieures
    Méthode 3 : Pour créer une procédure locale :
    • Positionnez le curseur dans l'événement "Déclarations globales" de la fenêtre ou de la page, ou dans l'événement "Ouverture" de l'état.
    • Tapez le prototype de la procédure à créer.
    • Validez. La procédure locale est automatiquement créée.
    Nouveauté 22
    Méthode 3 : Pour créer une procédure locale :
    • Positionnez le curseur dans l'événement "Déclarations globales" de la fenêtre ou de la page, ou dans l'événement "Ouverture" de l'état.
    • Tapez le prototype de la procédure à créer.
    • Validez. La procédure locale est automatiquement créée.
    Méthode 3 : Pour créer une procédure locale :
    • Positionnez le curseur dans l'événement "Déclarations globales" de la fenêtre ou de la page, ou dans l'événement "Ouverture" de l'état.
    • Tapez le prototype de la procédure à créer.
    • Validez. La procédure locale est automatiquement créée.
Remarque : Pour transformer une partie de code déjà saisi dans une procédure locale en une procédure locale :
  1. Sélectionnez le code correspondant.
  2. Utilisez l'option "Nouveau .. Créer une procédure locale contenant le code sélectionné" du menu contextuel.
  3. Indiquez :
  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.
WEBDEV - Code ServeurWEBDEV - Code Navigateur Remarque : Si le code sélectionné est un code serveur, la procédure créée sera une procédure serveur. Si le code sélectionné est un code navigateur, la procédure créée sera une procédure navigateur.

Création depuis le volet "Explorateur de projet"

Pour créer une procédure locale depuis le volet "Explorateur de projet" :
  1. Sélectionnez l'élément associé à la procédure locale (fenêtre, page, état, champs, ...).
  2. Déroulez les options de l'élément et sélectionnez l'option "Procédures" de l'élément.
    Remarque : Pour les champs, si aucune procédure n'est associée au champ, l'option "Procédures" n'est pas affichée. Dans ce cas, sélectionnez le nom du champ.
  3. Affichez le menu contextuel.
  4. Sélectionnez :
    • WEBDEV - Code Serveur l'option "Nouvelle procédure serveur".
    • WEBDEV - Code Navigateur l'option "Nouvelle procédure navigateur".
    • Versions 24 et supérieures
      WEBDEV - Code ServeurWEBDEV - Code Navigateur l'option "Nouvelle procédure mixte".
      Nouveauté 24
      WEBDEV - Code ServeurWEBDEV - Code Navigateur l'option "Nouvelle procédure mixte".
      WEBDEV - Code ServeurWEBDEV - Code Navigateur l'option "Nouvelle procédure mixte".
  5. Dans la fenêtre qui s'affiche :
    • Indiquez le nom de la nouvelle procédure locale.
    • Versions 21 et supérieures
      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.
      Nouveauté 21
      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.
      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.
    • Versions 24 et supérieures
      Indiquez le rôle de la procédure : Non défini, Métier, UI. Par défaut, une procédure a un rôle "Non défini".
      Nouveauté 24
      Indiquez le rôle de la procédure : Non défini, Métier, UI. Par défaut, une procédure a un rôle "Non défini".
      Indiquez le rôle de la procédure : Non défini, Métier, UI. Par défaut, une procédure a un rôle "Non défini".
  6. Cliquez sur le bouton "Ajouter". La procédure locale est créée. Par défaut, la procédure créée est publique. Pour plus de détails, consultez le paragraphe Procédure locale publique ou privée.
  7. Validez.

Afficher la liste des procédures locales

Pour afficher la liste des procédures locales dans le volet "Explorateur de projet", utilisez la touche F8 sous l'éditeur de code.
Suppression d'une procédure locale
Pour supprimer une procédure locale depuis le volet "Explorateur de projet" :
  1. Sélectionnez l'élément associé à la procédure locale (fenêtre, page, état, champ, ...).
  2. Déroulez les options de l'élément.
  3. Déroulez l'option "Procédures" de l'élément.
  4. Sélectionnez la procédure voulue.
  5. Affichez le menu contextuel de la procédure et sélectionnez l'option "Supprimer".
Procédure locale publique ou privée
Une procédure locale 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 locale en la rendant "Privée".
Versions 19 et supérieures
Lors de la création d'une procédure locale, il est possible de spécifier si la procédure est publique ou privée.
Nouveauté 19
Lors de la création d'une procédure locale, il est possible de spécifier si la procédure est publique ou privée.
Lors de la création d'une procédure locale, 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 locale :
  1. Sélectionnez la procédure locale 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é.
Versions 16 et supérieures
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.
Nouveauté 16
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.
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 locales privées ou publiques :
L'utilisation de procédures locales privées ou publiques a un impact notamment dans les composants externes. En effet, seules les procédures explicitement publiques (utilisant le mot-clé PUBLIC dans leur prototype) présentes dans un composant externe pourront pas être accessibles depuis le projet intégrant ce composant.
Version minimum requise
  • Version 12
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire