DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Editeurs / Editeur d'états / Manipulations sous l'éditeur
  • Présentation
  • Principe de l'héritage et de la surcharge
  • Surcharge des états
  • Surcharger le code des états
  • Surcharge des champs
  • Surcharger le look d'un champ (surcharge d'IHM)
  • Surcharger le code d'un champ (surcharge de code)
  • Spécificités des blocs
  • Remarques
  • Gérer les propriétés surchargées d'un champ ou d'un bloc
  • Connaître les propriétés surchargées
  • Limitations
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
Modèles d'états et héritage
Présentation

Principe de l'héritage et de la surcharge

Lorsque vous appliquez un modèle d'états à un état, l'ensemble des champs et du code du modèle sont "copiés" dans l'état. C'est le concept d'héritage.
Les champs du modèle sont visibles dans l'état, sous l'éditeur d'états. Un carré jaune est situé dans le coin haut gauche de chaque champ. Par défaut, les champs du modèle ne sont pas modifiables.
Le code du modèle est visible dans l'éditeur de code, dans les différents traitements de l'état ou de ses champs. Ce code WLangage est facilement identifiable :
  • les traitements associés au modèle sont suivis de "(modèle <Nom du modèle>)" (par exemple : "Avant impression XXX (modèle MonModèle)").
  • le fond des traitements est grisé car le code n'est pas modifiable.
Dans le cas de modèle de modèles, l'héritage se fait sur plusieurs niveaux.
Il est possible de surcharger les champs et le code du modèle. La surcharge des champs et du code permet de modifier, pour un état donné, le code et / ou les champs du modèle.
Surcharge des états

Surcharger le code des états

Pour surcharger le code des états modèle :
  1. Affichez les événements associés à l'état (option "Code" du menu contextuel).
  2. Si un événement existe dans l'état modèle, cet événement apparaît en double dans l'état utilisant le modèle. En effet, sont affichés :
    • l'événement issu du modèle. Cet événement apparaît en grisé et son intitulé est suivi de "(modèle <Nom du modèle>)".
    • l'événement associé à l'état.
  3. Le code saisi dans l'événement associé à l'état sera exécuté de la manière suivante :
    • pour tous les événements (sauf l'événement "Fermeture" de l'état) : les événements des modèles appliqués à l'état sont exécutés en suivant leur ordre d'inclusion, puis l'événement correspondant associé à l'état est exécuté.
    • pour l'événement "Fermeture" de l'état : l'événement "Fermeture" de l'état est exécuté, puis les événements des modèles appliqués à l'état sont exécutés en suivant l'ordre inverse d'inclusion.
Remarque : Il n'est pas possible de surcharger dans cette version les procédures locales d'un état.
Surcharge des champs

Surcharger le look d'un champ (surcharge d'IHM)

Pour surcharger l'interface d'un champ du modèle :
  1. Affichez le menu contextuel du champ du modèle présent dans l'état.
  2. Sélectionnez l'option "Surcharger le champ".
  3. Le carré jaune a été remplacé par un carré bleu, indiquant que ce champ peut être surchargé.
  4. Vous pouvez maintenant modifier tous les aspects de l'interface du champ : dimensions, position, style, ...

Surcharger le code d'un champ (surcharge de code)

Pour surcharger le code d'un champ du modèle :
  1. Affichez le menu contextuel d'un champ du modèle présent dans l'état.
  2. Sélectionnez l'option "Surcharger le champ".
  3. Le carré jaune a été remplacé par un carré bleu, indiquant que ce champ peut être surchargé.
  4. Affichez le code du bouton (option "Code" du menu contextuel).
  5. Deux sections de code de clic sont présents :
    • le code de clic issu du modèle.
    • le code de clic de l'état. Une fonction a été automatiquement ajoutée : ExécuteAncêtre. Cette fonction exécute le code de clic du modèle.
  6. Ajoutez le code spécifique à l'état en cours, avant et/ou après la procédure d'appel au code du modèle. Vous pouvez supprimer la fonction ExécuteAncêtre si vous ne souhaitez pas que le code du modèle soit exécuté.
Remarque : Il n'est pas possible de surcharger les procédures locales d'un état.

Spécificités des blocs

Un état contient des blocs uniques : début de document, haut de page, corps, bas de page, fin de document, ...
Lors de l'insertion d'un modèle dans un état, les blocs de même type sont fusionnés automatiquement :
  • le code est automatiquement hérité (de manière cumulative si il y a plusieurs modèles)
  • les propriétés sont héritées,
  • le bloc contient les champs du modèle et ceux de l'état.
Seul le modèle principal définit les propriétés des blocs.
Cas particulier : les blocs d'itération
Les blocs d'itération n'étant pas des blocs uniques, ils ne seront pas fusionnés.

Remarques

  • Par défaut, les différents blocs de l'état sont surchargés. Comme pour les champs, il est possible de surcharger l'interface et le code d'un bloc.
  • Il n'est pas possible de supprimer un élément surchargé d'un modèle.
  • La surcharge de style n'est pas disponible.
Gérer les propriétés surchargées d'un champ ou d'un bloc

Connaître les propriétés surchargées

Pour connaître les propriétés d'un champ ou d'un bloc qui ont été surchargées :
  1. Ouvrez le menu contextuel du champ ou du bloc.
  2. Sélectionnez l'option "Propriétés surchargées".
  3. La fenêtre de gestion des surcharges s'ouvre.
Il est possible depuis cette fenêtre de supprimer les propriétés surchargées. Il suffit de sélectionner la propriété voulue et de la supprimer.
Pour supprimer complètement toutes les surcharges effectuées sur un champ ou un bloc, il suffit de sélectionner la ligne intitulée "Surcharge complète".
Limitations
  • Il n'est pas possible d'utiliser dans les modèles :
    • des tableaux,
    • des ruptures,
    • des sources de données.
  • La surcharge de style n'est pas disponible.
Version minimum requise
  • Version 14
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 04/07/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale