Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Définition :
Cette nouvelle instruction permet de parcourir chaque ligne contenue dans un texte multi-ligne sous la forme d’une boucle qui exécutera les instructions inscrites pour chacune d’entre elles.

Syntaxe :

[POURCHAQUE]
	[EXTRAIRE]
		Variable pour contenir la ligne : variable qui contient le texte
	[FINEXTRAIRE]
		Instructions à exécuter pour chaque ligne lue du texte …
[FINPOURCHAQUE]

Exemples :
Cas d'une zone de texte dans un masque :
Soit les deux variables déclarées par paramétrage :

SDVA(‘’Lines’’, ‘’variable qui contiendra le texte multi-ligne’’)
SDVA(‘’Line’’, ‘’variable qui contiendra une ligne du texte’’)

Soit le masque suivant qui permet de saisir du texte multi-ligne dans la variable Lines et un bouton qui permet de parcourir les lignes du texte.

image-20240104-091200.png

Instructions positionnées sur une action de zone du bouton ‘POUR CHAQUE

[POURCHAQUE]
    [EXTRAIRE]
        Line : Lines
    [FINEXTRAIRE]
    SAM("line", Line)	// Chaque ligne du texte sera affichée à l’écran sous forme d’un message
[FINPOURCHAQUE]

Résultat : Un SAM affiche le contenu de chaque ligne lue.

image-20240104-091313.pngimage-20240104-091328.png

Cas d'un fichier texte :

image-20240104-091403.png
//Soit les deux variables déclarées par paramétrage :
SDVA("ComptesClients$", "variable qui contiendra le contenu du fichier")
SDVA("Line","variable qui contiendra une ligne du fichier texte")

//Lecture du fichier texte dans une variable:
vu(1) = FileReadAllText("c:\compte.txt","ComptesClients$")
[SI]
  vu(1)=0
[FINSI]
[ALORS]
// début de la boucle pour chaque ligne de texte
   [POURCHAQUE]
     [EXTRAIRE]
        Line : ComptesClients$
     [FINEXTRAIRE]
   SAM("line", Line)    // Chaque ligne du texte sera affichée à l’écran sous forme d’un message
   [FINPOURCHAQUE]
[FINALORS]
[SINON]
   SAM("", SilGetLastError(vu(1)),0)     // Affichage de l'erreur si le fichier est n'est pas lu   
[FINSINON]
  • No labels