FlexPro
HistoryBase
Ingénierie
Formation
Téléchargements
Support FlexPro
Connaissance
Communauté
À propos de nous
Références
Emplois
Contact général
Liste des revendeurs
Support FlexPro
FR
DE
EN
Porte-plaquette

Documentation FlexPro 2025

For Each Value...End

Répète une série d'instructions et, ce faisant, parcourt toutes les valeurs d'un ensemble de données.

Syntaxe

For Each Value Y[[, X], Z] In Data Set Do

   [Statements]

End

La syntaxe de l'instruction For Each Value...End se compose des éléments suivants :

Élément

Description

Y, X, Z

Variables qui adoptent les valeurs de l'ensemble des données. Vous pouvez omettre les variables à droite. Il n'est pas nécessaire de déclarer les variables avec Dim.

DataSet

L'ensemble de données dont les valeurs doivent être prises. L'ensemble de données ne peut pas être une valeur scalaire.

Déclarations

Une ou plusieurs instructions qui sont exécutées pour chaque valeur du jeu de données.

Remarques

Le bloc For Each Value est exécuté s'il y a au moins une valeur dans Données. La boucle est répétée pour toutes les valeurs de l' ensemble de données où X, Y et Z adoptent les valeurs de l'ensemble de données. Le programme quitte alors la boucle et poursuit l'exécution avec l'instruction qui suit l'instruction End.

Les colonnes d'un ensemble de données à deux dimensions sont parcourues l'une après l'autre. Si une variable est utilisée pour un composant qui n'est pas présent dans l'ensemble de données, elle reçoit des valeurs intégrales croissantes de 64 bits qui commencent par 0.

Si un composant traversé de l' ensemble de données est une quantité, son unité est utilisée dans la variable de contrôle correspondante.

Remarque :   Dans la mesure du possible, vous devez éviter les boucles sur les valeurs individuelles d'un ensemble de données. FPScript vous permet de calculer des ensembles de données complets en une seule instruction. Les boucles peuvent généralement être remplacées par des fonctions pour l'isolation d'événements en conjonction avec l'opérateur Opérateur d'indexation. For Each Value...End est la boucle FPScript la plus rapide.

Disponible dans

FlexPro View, Basic, Professional, Developer Suite

Exemple

L'exemple suivant collecte toutes les valeurs d'un signal qui sont supérieures ou égales à 5.0 :

Arguments Signal

Dim SY, SX

Pour chaque valeur Y, X dans le signal , faire

    Si Y >= 5 alors

        SY := Y

  SX := X

    End

End

Signal (SY, SX)

En utilisant l'isolation des événements, l'exemple ci-dessus peut être écrit beaucoup plus facilement et efficacement :

Arguments Signal

Signal[ValeursAu-dessusNiveau(Signal, 5)]

 

Voir aussi

For Each Column...End Statement

For Each Row...End Statement

For Each Element...End Statement

Déclaration For...End

While...End Statement

Déclaration Do...While