Repeat permet de réaliser des boucles jusqu'à la réalisation d'une condition.
Repeat
..... instructions
Until expr_l
Elément | Description | Restrictions |
expr_l | expression_logique. | Aucune. |
# Saisie jusqu'à l'obtention d'un numéro de transsaction
# Sortie si la condition est vérifiée
Repeat
Gosub LEC_TRANSAC
If [F:STT]TRSNUM = "" : Call ERREUR(GMESSAGE) From GESECRAN : Endif
Until [F:STT]TRSNUM <> ""
# affichage des éléments hiérarchisés
# Sortie par break
Pickbox [ZMT] SEL
& [F:ZMT]YITMREF Titled "",
& [F:ZMT]YUOM Titled "",
& [F:ZMT]YITMDES Titled ""
& Sized(160,240)
& Titled "Fenêtre de picking"
& At(40,40)
& As [PIC]
Boxact [PIC]
Fillbox [PIC]
#saisie dans la boîte de picking hiérarchisée
$SAIPIC
Boxinp [PIC] Using RESU
Case RESU
When GSTAPIC
Repeat
Pick [PIC]
Case status
When 7, 44 : Break
When 37 : Gosub SELECTION
When 41 : Gosub DESELECTION
Endcase
Until 1=0
When GSTAPKF : Goto FIN
When GSTAESC, GSTAFIN : Goto FIN
Endcase
Goto SAIPIC
Repeat permet de faire des boucles jusqu'à ce qu'une condition soit vraie (c'est-à-dire que l'expression numérique correspondante soit non nulle).
Les seules manières de sortir de la boucle sont :
Nombre d'itérations :
la boucle est effectuée au moins une fois, même si la condition est vraie au départ. Son exécution cesse dès que la condition devient vraie.