IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IHM Discussion :

Valide si / Est pas null ne fonctionne plus pour les contrôles de formulaire


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut Valide si / Est pas null ne fonctionne plus pour les contrôles de formulaire
    Bonjour,
    J'ai un comportement étrange sur une base :
    Pour éviter des champs vides, j'ai utilisé la propriété "Valide si" avec "Est Pas Null" comme valeur.
    Cela fonctionnait bien, et d'un seul coup -après quand même quelques creations dans la base comme des rubans personnalisés- le "Valide si" ne fonctionne plus et je peux passer d'un enregistrement à l'autre, créer de nouveaux enregistrements sans que la condition soit appliquée.
    Pour contourner le problème, j'ai appliqué la contrainte (Valide si / Est pas null) directement dans la table, et cela fonctionne bien avec le même formulaire !!!
    Je ne pense pas que celà soit dû au formulaire ni à la base en question, car ce souci se retrouve dans tous les formulaires de toutes les bases... Je pense donc plus à un souci d'Access lui même...
    Y a t il une explication logique à ce comportement ?
    Merci par avance pour vos lumières si vous avez déjà rencontré ce problème.

  2. #2
    Membre expérimenté
    Avatar de Papy Turbo
    Homme Profil pro
    Développeur Office/VBA
    Inscrit en
    Mars 2004
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Office/VBA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 822
    Points : 1 709
    Points
    1 709
    Par défaut
    Bonjour,

    je ne sais pas pourquoi tu as ce problème, mais c'est une excellente idée d'avoir remonté les contrôles directement dans la table : ils s'appliqueront partout, c'est bien plus sûr.

    Sinon, juste une question : toutes ces validations sont au niveau des champs (table) ou des contrôles(formulaire) et non pas, je suppose, au niveau de l'enregistrement ? (Propriétés de la table, évènement Form_BeforeUpdate)

    Si c'est bien le cas, ma seule remarque sera :
    - les contrôles de validation d'un champ/contrôle ne sont vérifiés que si cette valeur a changé.
    Si tu crées un nouvel enregistrement, que certaines valeurs sont (par défaut) nulles et que tu ne les modifies jamais, tu pourras toujours sauvegarder l'enregistrement sans aucun message d'erreur.

    Mais je soupçonne que ton problème est ailleurs ?
    Développement Office, support technique, assistance, sur place (Loire atlantique, Vendée, Maine et Loire) ou à distance.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par Papy Turbo Voir le message
    Sinon, juste une question : toutes ces validations sont au niveau des champs (table) ou des contrôles(formulaire) et non pas, je suppose, au niveau de l'enregistrement ? (Propriétés de la table, évènement Form_BeforeUpdate)

    Si c'est bien le cas, ma seule remarque sera :
    - les contrôles de validation d'un champ/contrôle ne sont vérifiés que si cette valeur a changé.
    Si tu crées un nouvel enregistrement, que certaines valeurs sont (par défaut) nulles et que tu ne les modifies jamais, tu pourras toujours sauvegarder l'enregistrement sans aucun message d'erreur.

    [/I]
    Merci pour ta réponse.
    Les "valide si" sont utilisés dans les propriétés des controles de formulaires et pas au niveau de l'enregistrement.
    Je vais revoir le fonctionnement car effectivement j'ai fait les tests en passant d'un enreg à l'autre en laissant le champ vide par défaut.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut
    Bon, je viens de refaire les tests de comportement du "valide si".
    Et effectivement, la validation ne s'effectue que si on modifie le contenu du champ/contrôle concerné...
    Cela veut dire qu'on peut valider un enregistrement avec des contrôles à vide si on n'est pas passé sur ces contrôles et qu'on n'y a rien saisi/modifié...
    Comment peut-on faire pour que le test de "valide si" fonctionne même si on n'a rien saisi/modifié dans le contrôle (à part définir ce "valide si" directement dans la table et non pas dans les propriétés du contrôle dans le formulaire...)
    Merci pour votre attention
    Pierre

Discussions similaires

  1. Réponses: 0
    Dernier message: 01/12/2008, 20h05
  2. Réponses: 14
    Dernier message: 23/07/2007, 17h29
  3. [débutant] la methode Validate() n'est pas appellée
    Par maxattack dans le forum Struts 1
    Réponses: 26
    Dernier message: 16/05/2007, 17h06
  4. requête Est pas Null
    Par emilie31 dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 19/03/2007, 10h54
  5. Savoir si un controle existe (n'est pas null)
    Par Orangina dans le forum C++Builder
    Réponses: 9
    Dernier message: 24/04/2006, 14h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo