4D v16.3

REFUSER

Accueil

 
4D v16.3
REFUSER

REFUSER 


 

REFUSER {( leChamp )} 
Paramètre Type   Description
leChamp  Champ in Champ dont la saisie doit être refusée

REFUSER accepte deux syntaxes. Dans la première syntaxe, REFUSER n'a pas de paramètre. Dans ce cas, la commande rejette la totalité de la saisie et force l'utilisateur à rester dans le formulaire. La seconde syntaxe permet de ne refuser que leChamp et force l'utilisateur à rester dans le champ.

Note : Nous vous conseillons d'utiliser en priorité les outils intégrés de validation de saisie de 4D, avant de faire appel à cette commande.

La première syntaxe de REFUSER est utilisée pour empêcher l'utilisateur de valider un enregistrement incomplet. Vous pouvez parvenir au même résultat sans utiliser REFUSER : associez la touche Entrée à un bouton n'effectuant "Pas d'action" et utilisez les commandes VALIDER et NE PAS VALIDER pour valider ou annuler l'enregistrement, une fois que les champs ont été correctement remplis. Il est recommandé d'employer cette seconde technique plutôt que d'utiliser la première syntaxe de REFUSER.

En général, vous employez la première syntaxe de REFUSER pour empêcher l'utilisateur de valider un enregistrement incomplet ou comportant des valeurs incorrectes. Si l'utilisateur tente de valider l'enregistrement, l'exécution de REFUSER provoque l'annulation de cette commande et l'enregistrement reste affiché dans le formulaire. L'utilisateur doit alors recommencer la saisie jusqu'à ce que les valeurs soient considérées comme correctes ou annuler l'enregistrement.

Le meilleur emplacement pour la commande REFUSER, lorsque vous utilisez cette syntaxe, est la méthode objet d'un bouton de type Valider associé à la touche de validation. De cette manière, la validation n'est possible que lorsque l'enregistrement est accepté, et l'utilisateur ne peut pas "forcer" la validation en appuyant sur la touche Entrée.

La seconde syntaxe de REFUSER utilise le paramètre leChamp. Dans ce cas, le curseur reste dans la zone de saisie du champ, ce qui oblige l'utilisateur à saisir une valeur correcte.
Avec cette syntaxe, la commande REFUSER doit impérativement être appelée dans l'événement formulaire Sur données modifiées. Vous devez placer cette syntaxe de REFUSER soit dans la méthode formulaire, soit dans la méthode objet de la zone de saisie. Si vous utilisez REFUSER avec le formulaire "pleine page" d'un sous-formulaire, placez-la dans la méthode formulaire ou une méthode objet du formulaire "pleine page". Lorsqu'elle est utilisée avec des champs de sous-formulaires, cette commande ne fait rien.

Vous pouvez utiliser la commande SELECTIONNER TEXTE pour sélectionner, à l'intérieur du champ, les valeurs qui ont été refusées.

L'exemple suivant illustre la première syntaxe de REFUSER, placée dans la méthode objet d'un bouton Valider. La touche Entrée a été définie comme équivalent clavier pour ce bouton. Cela signifie que même si l'utilisateur appuie sur cette touche pour valider l'enregistrement, la méthode objet du bouton sera exécutée. L'enregistrement est une transaction bancaire. Si la transaction est un chèque, un numéro de chèque doit être saisi. S'il n'y a pas de numéro, la validation est refusée :

 Au cas ou
    :(([Opération]Trans="Chèque") & ([Opération]Numéro="")) ` Si c'est un chèque sans numéro...
       ALERTE("Veuillez saisir le numéro du chèque.") ` Alerter l'utilisateur
       REFUSER ` Refuser la saisie
       ALLER A OBJET([Opération]Numéro) ` Placer le curseur dans le champ "numéro de chèque"
 Fin de cas

L'exemple suivant est une partie de la méthode objet d'un champ [Employés]Salaire. La méthode objet teste si la valeur de ce champ est inférieure à 10 000 Euros et la refuse si c'est le cas. Vous pourriez effectuer le même contrôle en spécifiant une valeur minimum pour le champ, dans l'éditeur de formulaires du mode Développement :

 Au cas ou
    :(Evenement formulaire=Sur données modifiées)
       Si([Employés]Salaire<10000)
          ALERTE("Le salaire annuel doit être supérieur à 10 000 Euros.")
          REFUSER([Employés]Salaire)
       Fin de si
 Fin de cas



Voir aussi  

ALLER A OBJET
NE PAS VALIDER
VALIDER

 
PROPRIÉTÉS 

Produit : 4D
Thème : Saisie
Numéro : 38
Nom intl. : REJECT

 
HISTORIQUE 

Créé : < 4D v6

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)