DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer une application ou un site / Champs, fenêtres et pages / Champs : Options et manipulations
  • Présentation
  • Caractéristiques du champ : saisie obligatoire
  • Saisie obligatoire bloquante
  • Saisie obligatoire non bloquante
  • Textes et options d'affichage : paramètres concernant la saisie obligatoire
  • Caractéristiques du champ : saisie invalide
  • Mettre en place la vérification de la saisie invalide
  • Textes et options d'affichage : paramètres concernant la saisie invalide
  • Exemple
  • Gestion de la saisie obligatoire et de la saisie invalide par programmation
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
WINDEV et WINDEV Mobile proposent plusieurs options permettant de gérer la saisie obligatoire ou invalide, aussi bien via l'éditeur de fenêtres que par programmation.
Ces options sont disponibles pour les champs suivants :
  • Champ de saisie,
  • Champ Combo (avec ou sans saisie),
  • Champ Interrupteur et champ Sélecteur,
  • Champ Notation.
La mise en évidence de la saisie obligatoire peut être effectuée :
  • Via le texte d'indication (si le champ est vide),
  • En modifiant le style du champ,
  • En affichant le picto de saisie obligatoire,
  • En affichant le texte d'explication.
Caractéristiques du champ : saisie obligatoire
WINDEV et WINDEV Mobile proposent deux modes de gestion de la saisie obligatoire :
  • saisie obligatoire bloquante,
  • saisie obligatoire non bloquante.

Saisie obligatoire bloquante

La saisie obligatoire bloquante permet d'empêcher l'utilisateur de sortir d'un champ dont la saisie est obligatoire.
Pour configurer un champ à saisie obligatoire bloquante :
  1. Affichez la fenêtre de description du champ.
  2. Dans l'onglet "Détail", dans la zone "Saisie obligatoire / invalide" :
    • Cochez l'option "Saisie obligatoire".
    • Sélectionnez l'option "Bloquer la sortie du champ".
    Remarque : il est possible de configurer les options d'indication de la saisie obligatoire via le bouton "Textes et options d'affichage".
  3. Validez la fenêtre de description du champ.

Saisie obligatoire non bloquante

La saisie obligatoire non bloquante offre la possibilité de ne vérifier qu'à la fin de la saisie dans les différents champs de l'interface si des champs à saisie obligatoire sont vides. L'utilisateur n'est ainsi pas bloqué pendant sa saisie.
Pour configurer un champ à saisie obligatoire non bloquante :
  1. Affichez la fenêtre de description du champ.
  2. Dans l'onglet "Détail", dans la zone "Saisie obligatoire / invalide" :
    • Cochez l'option "Saisie obligatoire".
    • Sélectionnez l'option "Utiliser SaisieInvalideDétecte".
    Remarque : il est possible de configurer les options d'indication de la saisie obligatoire via le bouton "Textes et options d'affichage".
  3. Validez la fenêtre de description du champ.
  4. Dans le code de validation de la fenêtre (par exemple bouton d'ajout dans la base de données), utilisez la fonction SaisieInvalideDétecte. Cette fonction permet de vérifier si tous les champs de saisie obligatoires de la fenêtre en cours ont bien été renseignés. Selon les options définies via le bouton "Textes et options d'affichage", les champs posant problème sont mis en évidence.
Remarque : L'événement optionnel "Autorisation de fermeture de la fenêtre" peut également être utilisé pour valider les différents éléments d'une fenêtre et pour appeler la fonction SaisieInvalideDétecte. Si cet événement renvoie Faux, la fenêtre en cours ne sera pas fermée.

Textes et options d'affichage : paramètres concernant la saisie obligatoire

Le bouton "Textes et options d'affichage" présent dans l'onglet "Détail" de la fenêtre de description des champs permet de définir les changements d'aspect du champ.
Deux types d'affichage sont disponibles :
  • l'affichage d'une indication : permet d'indiquer que la saisie est obligatoire lorsque la saisie est vide AVANT l'exécution de la fonction SaisieInvalideDétecte.
  • l'affichage d'une erreur : permet d'indiquer que la saisie est obligatoire lorsque la saisie est vide APRES l'exécution de la fonction SaisieInvalideDétecte.
Dans les deux cas, il est possible de :
  • Modifier le style du champ : Cette option modifie le style du champ. Le style utilisé pour l'indication et pour l'erreur est défini dans l'onglet "Style" du champ.
  • Afficher le picto de saisie obligatoire : Cette option affiche un picto spécifique dans le champ. Le picto utilisé ainsi que sa position par rapport à la zone de saisie est défini dans l'onglet "Style" du champ (élément "Saisie obligatoire (indication/erreur) : Explication et picto", bouton "Picto".
    Si cette option est choisie, il est possible de saisir le texte d'explication. Ce texte sera affiché au survol du champ et lors du clic sur le picto. Remarque : Si le texte d'explication n'est pas spécifié, un texte d'explication par défaut sera affiché.
  • Afficher le texte d'explication : Affiche le texte d'explication sous le champ. Si le texte d'explication n'est pas spécifié, un texte d'explication par défaut sera affiché. Attention : Cette option modifie l'interface. Si cette option est sélectionnée, le texte d'indication choisi est affiché directement sous le champ dans la fenêtre en édition. Il peut être nécessaire d'adapter l'interface pour que le champ soit affiché entièrement.
Caractéristiques du champ : saisie invalide
WINDEV et WINDEV Mobile permettent de vérifier si la saisie correspond bien à un masque défini avec une variable de type MasqueDeSaisie. Si ce n'est pas le cas, la saisie est considérée comme invalide lors de l'appel de la fonction SaisieInvalideDétecte.

Mettre en place la vérification de la saisie invalide

Pour configurer la vérification de la saisie invalide d'un champ :
  1. Définissez une variable de type MasqueDeSaisie correspondant au masque de saisie à appliquer au champ.
    Attention : Pensez à définir la procédure WLangage appelée par la propriété VérifieSiSaisieValide de la variable MasqueDeSaisie. En effet, cette procédure sera automatiquement appelée lors de l'utilisation de la fonction SaisieInvalideDétecte pour déterminer si le texte saisi est valide.
  2. Définissez dans le code du champ le masque de saisie à utiliser, grâce à la propriété MasqueSaisie.
  3. Affichez la fenêtre de description du champ.
  4. Dans l'onglet "Détail", dans la zone "Saisie obligatoire / invalide" :
    • Sélectionnez l'option "Utiliser SaisieInvalideDétecte".
    • Configurez les options d'indication de la saisie obligatoire via le bouton "Textes et options d'affichage".
  5. Validez la fenêtre de description du champ.
  6. Dans le code de validation de la fenêtre (par exemple bouton d'ajout dans la base de données), utilisez la fonction SaisieInvalideDétecte. Cette fonction permet de vérifier les problèmes de saisie invalide et de saisie obligatoire.

Textes et options d'affichage : paramètres concernant la saisie invalide

Le bouton "Textes et options d'affichage" présent dans l'onglet "Détail" de la fenêtre de description des champs permet de définir les changements d'aspect du champ.
En cas de saisie invalide, il est possible de :
  • Modifier le style du champ : Modifie le style du champ. Le style utilisé pour les différents éléments de la saisie invalide est défini dans l'onglet "Style" du champ.
  • Afficher le picto de saisie obligatoire : Affiche un picto spécifique dans le champ. Le picto utilisé ainsi que sa position par rapport à la zone de saisie est défini dans l'onglet "Style" du champ (élément "Saisie invalide : Explication et picto", bouton "Picto".
    Si cette option est choisie, il est possible de saisir le texte d'explication. Ce texte sera affiché au survol du champ et lors du clic sur le picto. Remarque : Si le texte d'explication n'est pas spécifié, un texte d'explication par défaut sera affiché.
  • Afficher le texte d'explication : Affiche le texte d'explication sous le champ. Si le texte d'explication n'est pas spécifié, un texte d'explication par défaut sera affiché. Attention : Cette option modifie l'interface. Si cette option est sélectionnée, le texte d'indication choisi est affiché directement sous le champ dans la fenêtre en édition. Il peut être nécessaire d'adapter l'interface pour que le champ soit affiché entièrement.

Exemple

Cet exemple utilise un champ de saisie permettant de saisir un numéro de téléphone et un bouton de vérification.
  • L'événement "Sortie" du champ contient le code suivant :
    MoiMême.MasqueSaisie = gMasqueTéléphone
  • Le code d'initialisation du projet contient le code suivant permettant de définir la variable de type MasqueDeSaisie :
    gsMasqueTéléphone est une chaîne = "99 99 99 99 99"
    gMasqueTéléphone est un MasqueDeSaisie
     
    gMasqueTéléphone.VérifieSiSaisieValide = VerifieSiSaisieValide
    gMasqueTéléphone.ValideEnSaisie = ValideEnSaisie
    gMasqueTéléphone.FormateEnSaisie = FormateEnSaisie
    gMasqueTéléphone.FormateEnSortie = FormateEnSortie
    gMasqueTéléphone.FormateEnEntrée = FormateEnEntrée
    gMasqueTéléphone.FormateEnAffectation = FormateEnAffectation
     
    PROCÉDURE INTERNE VerifieSiSaisieValide(sTexte est une chaîne) : booléen
    RENVOYER VérifieExpressionRégulière(sTexte, "[0-9 ]*") _ET_
    Taille(ChaîneFormate(sTexte, ccSansEspaceIntérieur)) = 10
    FIN
     
    PROCÉDURE INTERNE FormateEnSaisie(LOCAL sTexteAvant est une chaîne,
    LOCAL nCurseurAvant est un entier,
    LOCAL nFinCurseurAvant est un entier, sTexteApres est une chaîne,
    nCurseurApres est un entier,
    nFinCurseurApres est un entier)
    SI Taille(sTexteAvant) > Taille(sTexteApres) ALORS RETOUR
    //Ne rien faire si on est en train d'effacer
    // si on est a la fin
    SI nFinCurseurApres = Taille(sTexteApres) + 1 ALORS
    // on met un " " si c'est ce qu'il faut à cette position
    SI Milieu(gsMasqueTéléphone, nFinCurseurApres, 1) = " " ALORS
    sTexteApres += " "
    nFinCurseurApres ++
    nCurseurApres = nFinCurseurApres
    FIN
    FIN
    FIN
     
    PROCÉDURE INTERNE ValideEnSaisie(sTexte chaîne) : booléen
    RENVOYER VérifieExpressionRégulière(sTexte, "[0-9 ]*")
    FIN
     
    PROCÉDURE INTERNE ValideEnSortie(sTexte chaîne) : booléen
    RENVOYER VérifieExpressionRégulière(sTexte, "[0-9 ]*")
    FIN
     
    PROCÉDURE INTERNE FormateEnSortie(sTexte_INOUT est une chaîne)
    FormateChaîneEnNuméroTéléphone(sTexte_INOUT)
    FIN
     
    PROCÉDURE INTERNE FormateEnEntrée(sTexte_INOUT est une chaîne)
    FormateChaîneEnNuméroTéléphone(sTexte_INOUT)
    FIN
    PROCÉDURE INTERNE FormateEnAffectation(sTexte_INOUT est une chaîne)
    FormateChaîneEnNuméroTéléphone(sTexte_INOUT)
    FIN
     
    PROCÉDURE INTERNE FormateChaîneEnNuméroTéléphone(sTexte_INOUT est une chaîne)
    sOut est une chaîne = ""
    sTexte_INOUT = ChaîneFormate(sTexte_INOUT, ccSansEspaceIntérieur + ccSansEspace)
    soit nTexte = 1
    POUR n = 1 _À_ Taille(gsMasqueTéléphone)
    SI nTexte > Taille(sTexte_INOUT) ALORS SORTIR
    SI gsMasqueTéléphone[n] = " " ALORS
    sOut += " "
    SINON
    sOut += sTexte_INOUT[nTexte]
    nTexte ++
    FIN
    FIN
    sTexte_INOUT = sOut
    FIN
  • Le bouton de vérification contient le code suivant :
    SaisieInvalideDétecte()
Gestion de la saisie obligatoire et de la saisie invalide par programmation
WINDEV et WINDEV Mobile mettent à votre disposition différentes propriétés et fonctions pour gérer la saisie obligatoire et la saisie invalide par programmation :
  • Propriétés disponibles :
    SaisieInvalideBloquanteLa propriété SaisieInvalideBloquante permet de savoir s'il est possible ou non de sortir du champ en cas de saisie invalide.
    SaisieObligatoireLa propriété SaisieObligatoire permet de connaître et modifier la caractéristique de saisie obligatoire d'un champ.
    TexteSaisieInvalideLa propriété TexteSaisieInvalide permet de connaître et de définir le texte qui sera affiché si le champ est invalide (masque ou borne).
    TexteSaisieObligatoireLa propriété TexteSaisieObligatoire permet de connaître et de définir le texte qui sera affiché si le champ est vide (avec la propriété SaisieObligatoire activée).
  • Fonctions disponibles :
    SaisieInvalideAfficheErreurAffiche une erreur de saisie invalide pour le champ spécifié.
    SaisieInvalideDétecteDétecte et met en erreur les champs dont la saisie est invalide et /ou obligatoire.
    SaisieInvalideListeChampConstruit la liste des champs dont la saisie est invalide/obligatoire.
Version minimum requise
  • Version 26
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 14/06/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale