Controler

Instruction

Rôle :

Contrôle qu'une expression booléenne est VRAIE, avec affichage d'un message d'erreur si elle est FAUSSE, et éventuellement retour en saisie sur la zone courante.

Notes 

 

 

Syntaxe 1 :

Controler <expression numérique>, <expression alphanumérique>

L'expression numérique est l'expression booléenne à contrôler.

L'expression alphanumérique est le message d'erreur qui sera affiché en cas de non vérification de l'expression booléenne. Si elle est vide (""), la boîte de dialogue n'est pas affichée.

Controler doit être utilisé dans un objet ayant une déclaration ECRAN (SAISIE ou TRAITEMENT).

Si l'expression numérique est non nulle (expression booléenne VRAIE), l'exécution se poursuit normalement. Sinon (expression booléenne FAUSSE) le message d'erreur est affiché dans une boîte de dialogue, et la saisie du contrôle est reprise avec obligation d'entrer une nouvelle valeur avant validation.

Il est rappelé que les opérateurs logiques =, > , < , ! , etc. donnent un résultat numérique. lIs peuvent donc être utilisés dans l'instruction Controler.

 

L'instruction Controler interrompt l'exécution de la méthode en cours. Les instructions ou fonctions situées après l'instruction Controler ne seront jamais exécutées.

 

Syntaxe 2 :

Controler

Cette syntaxe 2 s'utilise à l'intérieur de la méthode CodeZone, méthode correspondant à la zone que l'on veut contrôler. En effet cette méthode est appelée dès que CodeZone est modifiée. On utilise alors cette instruction pour forcer la saisie de cette zone, si on n'est pas satisfait de la valeur saisie.

Contrairement à l'instruction Saisir, la méthode CodeZone sera déclenchée à chaque fois que l'utilisateur quittera la zone ou validera l'écran, et ce même si aucune autre modification n'est effectuée. On utilisera donc Controler dès que l'on veut être garanti du contenu d'une zone saisie.

 

Syntaxe 3 :

Controler <expression alphanumérique>

L'expression alphanumérique est le code de la zone à contrôler.

Cette syntaxe permet de renforcer la saisie d'une zone particulière définie par son code dans l'expression. Elle s'utilise en général dans la méthode VALIDATION (ou dans la méthode générique CTRL_MODIF).

Exemple 1 : Syntaxe 1

Domaine : ESSAI "Contrôler une zone"
Objet SAISIE : CONTZONE
          
Declaration
                   
ECRAN : CLI1
                   
MODES : Vm
          
FinDeclaration

          
Methode NOM
                   
Controler NOM <> "", "Entrez le nom!"
          
FinMethode

          
Methode CP
                   
Controler Longueur(CP) = 5, "Code postal en 5 caractères!"
          
FinMethode
FinObjet

Après l'appel à la méthode NOM :

Après l'appel à la méthode CP :

Exemple 2 : Syntaxe 2

Domaine : ESSAI
Objet SAISIE : CONTROLE
          
Declaration
                   
ECRAN : CLI1
                   
MODES : Vm
          
FinDeclaration

          
Methode CP
                   
Si Longueur (CP)<>5 Alors
                     
Controler
                   
FinSi
          
FinMethode
FinObjet

Après l'appel à la méthode CP :

Contrôle de la saisie du code postal sur 5 caractères après la première modification de la zone CP. Tant que le code postal n'a pas été saisi correctement, le curseur reste bloqué sur la zone CP.

Exemple 3 : Syntaxe 3

Domaine : ESSAI
Objet SAISIE : CONTROLE
          
Declaration
                   
ECRAN : CLI1
                   
MODES : Vm
          
FinDeclaration

          
Methode VALIDATION
                   
Si Longueur (CP)<>5 Alors
                     
Controler "CP"
                   
FinSi
          
FinMethode
FinObjet

Après l'appel à la méthode VALIDATION :

Contrôle de la saisie du code postal sur 5 caractères au moment de la validation.

 

Saisir, SePositionner