DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Syntaxe WLangage / Instructions structurées
  • Syntaxe 1 : Parcours des éléments du champ
  • Syntaxe 2 : Parcours des éléments sélectionnés du champ
  • Parcours des lignes d'un champ Table
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
L'instruction POUR TOUT permet d'effectuer différents types de parcours de champs (champs Liste, champs Table, champs Zone répétée) :
  • Parcours des éléments du champ.
  • Parcours des valeurs des éléments sélectionnés.
  • Parcours des indices des éléments sélectionnés.
Remarque : Les instructions POUR TOUT, POUR TOUS, POUR CHAQUE sont acceptées. Dans cette documentation, seule l'instruction POUR TOUT est utilisée et peut être remplacée par POUR TOUS ou POUR CHAQUE.
Limitation : Cette instruction n'est pas utilisable sur les champs Combo.
L'instruction POUR TOUT peut également être utilisée pour parcourir les objets DotNet qui implémentent l'interface IEnumerable.
Exemple
// Pour chaque utilisateur sélectionné dans le champ Table TABLE_Utilisateur
POUR TOUTE LIGNE SÉLECTIONNÉE DE TABLE_Utilisateur
// Envoi d'un email
Proc_EnvoieMessage(COL_Nom, COL_Email)
FIN
Syntaxe

Parcours des éléments du champ (Table, Liste et Zone répétée) Masquer les détails

POUR TOUTE LIGNE [<Indice> [, <Compteur>]] DE <Champ>
  ...
FIN
<POUR TOUTE LIGNE> :
Signale le début du bloc d'instructions.
<Indice> :
Variable optionnelle de type Entier. A chaque itération, contient l'indice de la ligne en cours.
<Compteur> :
Variable optionnelle de type Entier. Cette variable compte le nombre d'itérations.
<Champ> :
Champ à parcourir : champ Liste, champ Table ou champ Zone répétée.

Parcours des éléments sélectionnés Masquer les détails

POUR TOUTE LIGNE SELECTIONNEE [<Indice>, [<Compteur>]] DE <Champ>

    ...
FIN
<POUR TOUTE LIGNE SELECTIONNEE> :
Signale le début du bloc d'instructions.
<Indice> :
Variable de type Entier. A chaque itération, contient l'indice de la ligne sélectionnée en cours.
<Compteur> :
Variable optionnelle de type Entier. Cette variable compte le nombre d'itérations (nombre de lignes sélectionnées par exemple).
<Champ> :
Champ à parcourir : champ Liste, champ Table ou champ Zone répétée.
Remarques

Syntaxe 1 : Parcours des éléments du champ

Cette syntaxe permet de parcourir toutes les lignes, visibles ou non, d'un champ Liste, d'un champ Table ou d'un champ Zone répétée.
Pour chaque ligne parcourue :
  • <Nom du champ> renvoie l'indice de la ligne en cours. <Indice> permet également de connaître l'indice de la ligne en cours.
  • <Nom du champ>[<Nom du champ>] renvoie toutes les colonnes séparées par des TAB. Cette syntaxe est équivalente à <Nom du champ>[<Indice>].
  • <Nom de la colonne> renvoie la valeur de la colonne pour la ligne en cours de parcours.
Le parcours n'a aucune influence sur la sélection courante.
Le comportement est indéterminé si le nombre d'éléments du champ est modifié pendant la boucle de parcours.

Syntaxe 2 : Parcours des éléments sélectionnés du champ

Cette syntaxe permet de parcourir toutes les lignes sélectionnées d'un champ Liste, d'un champ Table ou d'un champ Zone répétée.
Pour chaque ligne parcourue :
  • <Nom du champ> renvoie l'indice de la ligne sélectionnée en cours. <Indice> permet également de connaître l'indice de la ligne sélectionnée en cours.
  • <Nom du champ>[<Nom du champ>] renvoie toutes les colonnes séparées par des TAB.
  • <Nom de la colonne> renvoie la valeur de la colonne pour la ligne en cours de parcours. Il est également possible d'utiliser la syntaxe : <Colonne>[<Indice>]
Changement de comportement de la version 12 : Avant la version 12, le parcours n'avait aucune influence sur la sélection courante. Désormais, la ligne courante de la table est toujours déplacée pendant le parcours.
Le comportement est indéterminé si le nombre d'éléments du champ est modifié pendant la boucle de parcours.

Parcours des lignes d'un champ Table

Lors du parcours des lignes d'un champ Table :
  • l'affichage de ce champ Table est bloqué. La fonction MultitâcheRepeint n'est pas pris en compte.
  • il ne faut pas modifier la ou les lignes sélectionnées et/ou la ligne en cours (fonction TableSelectMoins, TableSelectPlus, ...).
  • dans le cas d'un champ Table fichier, dans la boucle de parcours, l'enregistrement en cours est l'enregistrement traité par le parcours.
Version minimum requise
  • Version 10
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 15/09/2022

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