PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Présentation
  • Surcharger une fonction WLangage
  • Présentation
  • Comment surcharger une fonction WLangage ?
  • Différencier la fonction WLangage et la fonction personnalisée
  • Utiliser des fonctions WLangage dans des requêtes SQL pour HFSQL
  • Présentation
  • Comment le faire ?
  • Remarques
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Présentation
Le WLangage propose le mot-clé "WL." pour :
Versions 16 et supérieures
Universal Windows 10 App Cette fonctionnalité est disponible pour les applications Windows Phone.
Nouveauté 16
Universal Windows 10 App Cette fonctionnalité est disponible pour les applications Windows Phone.
Universal Windows 10 App Cette fonctionnalité est disponible pour les applications Windows Phone.
Versions 17 et supérieures
iPhone/iPad Cette fonctionnalité est disponible pour les applications iPhone/iPad.
Nouveauté 17
iPhone/iPad Cette fonctionnalité est disponible pour les applications iPhone/iPad.
iPhone/iPad Cette fonctionnalité est disponible pour les applications iPhone/iPad.
Versions 18 et supérieures
Universal Windows 10 App Cette fonctionnalité est disponible en mode Windows Store apps.
Widget Android Cette fonctionnalité est disponible en mode Widget Android.
Nouveauté 18
Universal Windows 10 App Cette fonctionnalité est disponible en mode Windows Store apps.
Widget Android Cette fonctionnalité est disponible en mode Widget Android.
Universal Windows 10 App Cette fonctionnalité est disponible en mode Windows Store apps.
Widget Android Cette fonctionnalité est disponible en mode Widget Android.
Remarque : A partir de la version 19, HFSQL est le nouveau nom de HyperFileSQL.
Surcharger une fonction WLangage
WINDEVWEBDEV - Code ServeurEtats et RequêtesAndroidWidget AndroidiPhone/iPadApple WatchWindows MobileUniversal Windows 10 AppJavaCode Utilisateur (MCU)

Présentation

La surcharge d'une fonction WLangage permet d'utiliser une fonction personnelle du même nom que la fonction WLangage.
Par exemple, au lieu d'utiliser la fonction standard du WLangage Info, il est possible d'utiliser une procédure personnelle nommée Info. A chaque fois que la fonction Info sera utilisée, ce sera la procédure personnelle qui sera exécutée.
WINDEVWEBDEV - Code ServeurEtats et RequêtesAndroidWidget AndroidiPhone/iPadApple WatchWindows MobileUniversal Windows 10 AppJavaCode Utilisateur (MCU)

Comment surcharger une fonction WLangage ?

Pour surcharger une fonction WLangage :
  1. Créez une nouvelle procédure dans votre projet (procédure locale ou globale). Cette procédure doit avoir les caractéristiques suivantes :
    • Le même nom que la fonction WLangage à surcharger.
    • Le même nombre de paramètres que la fonction WLangage à surcharger. Ces paramètres doivent également être du même type que ceux de la fonction WLangage.
  2. Lorsque le nom de la fonction / procédure sera utilisée dans le projet (ou dans la fenêtre si la procédure créée est locale), la procédure personnalisée sera utilisée à la place de la fonction WLangage.
Remarques :
  • La surcharge des fonctions du WLangage n'est pas prise en compte lors de la compilation dynamique. Par exemple, si vous avez surchargé la fonction Trace, l'appel de cette fonction dans un code compilé dynamiquement appellera la fonction WLangage et non la fonction surchargée.
  • Versions 19 et supérieures
    Il est possible de surcharger des fonctions manipulant des fenêtres, des pages ou des états. Il suffit d'utiliser la notation suivante pour définir le paramètre correspondant à l'élément voulu dans la procédure surchargeant la fonction :
    • WINDEVWINDEV Mobile Pour les fenêtres, le paramètre doit être défini avec la notation "NomFenêtre est une chaîne <nom de fenêtre>". Par exemple, pour surcharger la fonction Ouvre, le code de la procédure sera :
      PROCEDURE Ouvre(NomFenêtre est une chaîne <nom de fenêtre>, *)
    • WEBDEV - Code ServeurWEBDEV - Code Navigateur Pour les pages, le paramètre doit être défini avec la notation "NomPage est une chaîne <nom de page>". Par exemple, pour surcharger la fonction PageAffiche, le code de la procédure sera :
      PROCEDURE PageAffiche(NomPage est une chaîne <nom de page>, *)
    • Pour les états, le paramètre doit être défini avec la notation "NomEtat est une chaîne <nom de l'état>". Par exemple, pour surcharger la fonction iImprimeEtat, le code de la procédure sera :
      PROCEDURE iImprimeEtat(NomEtat est une chaîne <nom d'état>, *)
    Pour plus de détails, consultez Paramètres d'une procédure.
    Nouveauté 19
    Il est possible de surcharger des fonctions manipulant des fenêtres, des pages ou des états. Il suffit d'utiliser la notation suivante pour définir le paramètre correspondant à l'élément voulu dans la procédure surchargeant la fonction :
    • WINDEVWINDEV Mobile Pour les fenêtres, le paramètre doit être défini avec la notation "NomFenêtre est une chaîne <nom de fenêtre>". Par exemple, pour surcharger la fonction Ouvre, le code de la procédure sera :
      PROCEDURE Ouvre(NomFenêtre est une chaîne <nom de fenêtre>, *)
    • WEBDEV - Code ServeurWEBDEV - Code Navigateur Pour les pages, le paramètre doit être défini avec la notation "NomPage est une chaîne <nom de page>". Par exemple, pour surcharger la fonction PageAffiche, le code de la procédure sera :
      PROCEDURE PageAffiche(NomPage est une chaîne <nom de page>, *)
    • Pour les états, le paramètre doit être défini avec la notation "NomEtat est une chaîne <nom de l'état>". Par exemple, pour surcharger la fonction iImprimeEtat, le code de la procédure sera :
      PROCEDURE iImprimeEtat(NomEtat est une chaîne <nom d'état>, *)
    Pour plus de détails, consultez Paramètres d'une procédure.
    Il est possible de surcharger des fonctions manipulant des fenêtres, des pages ou des états. Il suffit d'utiliser la notation suivante pour définir le paramètre correspondant à l'élément voulu dans la procédure surchargeant la fonction :
    • WINDEVWINDEV Mobile Pour les fenêtres, le paramètre doit être défini avec la notation "NomFenêtre est une chaîne <nom de fenêtre>". Par exemple, pour surcharger la fonction Ouvre, le code de la procédure sera :
      PROCEDURE Ouvre(NomFenêtre est une chaîne <nom de fenêtre>, *)
    • WEBDEV - Code ServeurWEBDEV - Code Navigateur Pour les pages, le paramètre doit être défini avec la notation "NomPage est une chaîne <nom de page>". Par exemple, pour surcharger la fonction PageAffiche, le code de la procédure sera :
      PROCEDURE PageAffiche(NomPage est une chaîne <nom de page>, *)
    • Pour les états, le paramètre doit être défini avec la notation "NomEtat est une chaîne <nom de l'état>". Par exemple, pour surcharger la fonction iImprimeEtat, le code de la procédure sera :
      PROCEDURE iImprimeEtat(NomEtat est une chaîne <nom d'état>, *)
    Pour plus de détails, consultez Paramètres d'une procédure.
WINDEVWEBDEV - Code ServeurEtats et RequêtesAndroidWidget AndroidiPhone/iPadApple WatchWindows MobileUniversal Windows 10 AppJavaCode Utilisateur (MCU)

Différencier la fonction WLangage et la fonction personnalisée

Si vous avez surchargé une fonction WLangage, pour utiliser la fonction originale, il suffit de préfixer le nom de la fonction par les lettres WL. La syntaxe à utiliser est la suivante :
WL.<Nom de la fonction>
Par exemple, pour surcharger la fonction Trace du WLangage, il est possible d'utiliser le code suivant :
PROCEDURE Trace(Information1)
Message("Lancement d'une trace")
WL.Trace(Information1)
Utiliser des fonctions WLangage dans des requêtes SQL pour HFSQL

Présentation

Une fonction WLangage peut être utilisée dans une requête SQL. Cette requête SQL pourra être exécutée sur des fichiers HFSQL. Il est ainsi possible par exemple d'utiliser des fonctions WLangage pour créer des conditions de sélection avancées.
Il est possible d'utiliser des fonctions WLangage directement dans le code SQL d'une requête ou bien dans l'éditeur de requêtes (par exemple lors de la création d'une rubrique de calcul utilisant une formule mathématique).
Android Sous Android, l'utilisation de fonctions WLangage dans les requêtes SQL est possible uniquement avec les bases de données au format HFSQL Client/Serveur.

Comment le faire ?

Pour utiliser des fonctions WLangage dans des requêtes pour HFSQL :
  1. Créez une requête sous l'éditeur de requêtes.
  2. Pour utiliser les fonctions WLangage dans la requête, utilisez la notation : WL.<Nom de la fonction>
    Les fonctions WLangage peuvent être utilisées par exemple :
    • Dans le code SQL de la requête. Exemple :
      -- Sélection des tâches de plus de 5 jours
      SELECT Tâche.Libellé FROM Tâche WHERE
      WL.DateDifférence(Tâche.HeureDébut, Tâche.DateFin) > 5
    • Dans une formule mathématique manipulée par une rubrique calculée.
  3. La requête peut être :

Remarques

  • Seules les fonctions WLangage sont utilisables dans les requêtes. Les propriétés ne peuvent pas être utilisées.
  • Il est possible d'imbriquer plusieurs fonctions WLangage dans une requête.
  • Si la fonction WLangage est utilisée dans le SELECT, le type de la valeur renvoyée est un mémo texte.
  • Cette syntaxe peut être utilisée uniquement avec HFSQL Classic, Mobile et Client/Serveur.
    Android L'utilisation de fonctions WLangage dans les requêtes SQL est possible uniquement avec les bases de données au format HFSQL Client/Serveur.
  • Les limites de la fonction WLangage sont identiques si elle est utilisée dans une requête.
  • Les fonctions actuellement disponibles dans les requêtes sont les suivantes :
  • Pour utiliser les fonctions Ouvre, OuvreFille et OuvrePopup dans les requêtes, il faut passer le nom des fenêtres sous la forme de chaînes de caractères (entre guillemets).Pour utiliser les fonctions Ouvre, OuvreFille et OuvrePopup dans les requêtes, il faut passer le nom des fenêtres sous la forme de chaînes de caractères (entre guillemets).
  • Versions 22 et supérieures
    Pour utiliser une constante WLangage dans les requêtes contenant des fonctions WLangage, utilisez la notation : WL.<Nom de la constante>
    Par exemple, code SQL de la requête :
    SELECT
    WL.ExtraitChaîne('A|B|C',1,'|'),
    WL.ExtraitChaîne('A|B|C',1,'|', WL.DepuisFin)
    FROM
    DUAL
    Nouveauté 22
    Pour utiliser une constante WLangage dans les requêtes contenant des fonctions WLangage, utilisez la notation : WL.<Nom de la constante>
    Par exemple, code SQL de la requête :
    SELECT
    WL.ExtraitChaîne('A|B|C',1,'|'),
    WL.ExtraitChaîne('A|B|C',1,'|', WL.DepuisFin)
    FROM
    DUAL
    Pour utiliser une constante WLangage dans les requêtes contenant des fonctions WLangage, utilisez la notation : WL.<Nom de la constante>
    Par exemple, code SQL de la requête :
    SELECT
    WL.ExtraitChaîne('A|B|C',1,'|'),
    WL.ExtraitChaîne('A|B|C',1,'|', WL.DepuisFin)
    FROM
    DUAL
Liste des exemples associés :
Surcharge de fonctions WLangage Exemples unitaires (WINDEV) : Surcharge de fonctions WLangage
[ + ] Surcharge de fonctions du WLangage.
Cet exemple surcharge la fonction Trace et permet de :
- Afficher une trace "normale"
- Afficher une trace et enregistrer les données dans un fichier
- Effectuer une trace fichier (Les informations sont seulement enregistrées dans un fichier)
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire