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 :

Restrictions sur colonnes Access - Regles de remplissages de colonnes


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2007
    Messages : 14
    Points : 6
    Points
    6
    Par défaut Restrictions sur colonnes Access - Regles de remplissages de colonnes
    Bonjour a tous,


    Apres avoir concu ma base de donnees, je me suis pose une question et je voulais donc savoir s'il etait possible de definir des regles de remplissages sur les tables. Je m'explique un peu plus.

    Imaginons que j'ai une table Test, la table possede les champs suivants :

    test_id INTEGER
    test_Nom TEXT(50)
    test_checkbox1 OUI/NON (au format checkbox)
    test_checkbox2 OUI/NON (au format checkbox)


    A present je voulais savoir si je pouvais specifier, ajouter, ou definir une regle me permettant de m'assurer que si pour un enregistrement test_checkbox1 est coche alors l'autre checkbox appele test_checkbox2 n'est pas coche. Je souhaiterais qu'il ne soit pas possible de cocher les 2 cases pour un meme enregistrement. (Soit l'un soit l'autre)

    J'espere avoir ete clair , Fais moi savoir si cela ne l'ai pas.

    Merci d'avance pour ceux qui me repondront.

    Bonne journee

  2. #2
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    SI l'entrée des données se fait sur un formulaire, il suffit de créer les options dans un groupe d'options
    autrement il faut le gérer par code

  3. #3
    Futur Membre du Club
    Inscrit en
    Février 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2007
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Bonjour Helas,

    Je me suis apercu qu'il manquait une information, en effet j'aimerais definir mes restrictions (ou contraintes, je ne sais pas comment l'appeler) directement dans la base de donnees Access, donc pas par l'intermediaire d'un formulaire. Tu me dis que l'on peut coder c ca ?

    Peux tu me dire ou je peux trouver des infos pour coder directement sur les colonnes de mes tables, ou peut etre as tu un exemple a me montrer ?

    Merci beaucoup

  4. #4
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Cette requete inverse l'option 1 si elle est égale à l'option 2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     s = "UPDATE Table SET Table.test_checkbox1 = Not [test_checkbox1] WHERE (((Table.test_checkbox2)=[test_checkbox1]));"
     DocCmd.RunSQL s
    Celle-ci inverse l'option2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     s = "UPDATE Table SET Table.test_checkbox2 = Not [test_checkbox2] WHERE (((Table.test_checkbox1)=[test_checkbox2]));"
     DocCmd.RunSQL s
    Il faut choisir

  5. #5
    Futur Membre du Club
    Inscrit en
    Février 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2007
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Desole de t'embeter encore,

    Mais je ne suis pas expert d'access,

    Ou ecris tu ce code, tu le cree dans le vba d'access et et tu crees un module, c ca ?
    ET je suppose que tu as une panoplie de librairie avec lesquelles tu peux t'amuser pour faire les restrictions que tu souhaites ?

  6. #6
    Futur Membre du Club
    Inscrit en
    Février 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2007
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    En fait ce que je souhaite faire est plus tordu que cela.

    Imagine que tu ais a remplir tes tables directement sur la base Access, donc tu doubles cliques sur ta table Test.

    Et tu remplis a la main les champs. C'est ici que que voudrais ajouter ma restrictions et donc si dans un premier temps je coche une case et que si ,ensuite, je coche la deuxieme case alors , cela me decoche la premiere case automatiquement. C'est pour eviter les erreurs de remplissages de ma base de donnees.

  7. #7
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Pour ma part, une base doit être automatisée au maximum.
    Soit elle lance du code au démarrage, soit elle ouvre un formulaire.
    Si les données de la table Test sont rentrées à partir d'un formulaire, il suffit de créer les tests (ou corrections) sur les événements qui se produisent dans le formulaire. Ici ce pourrait être sur l'événement Form_AfterUpdate (Après mise à jour)

  8. #8
    Futur Membre du Club
    Inscrit en
    Février 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2007
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Le probleme est que je ne veux pas de formulaire car je ne compte a en utiliser , ensuite le code au demarrage ne m'aidera plus lorsque je serais en train de remplir les donnees directement dans ma table.

    Il me faudrait un test permanent qui ne m'autorise pas a cocher 2 cases en meme temps.


    Je voudrais eviter d'avoir la derniere ligne.
    Images attachées Images attachées  

  9. #9
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    si les 2 options sont toujours opposées, il faut n'en gardé qu'une sachant que l'autre (imaginaire) sera inverse

  10. #10
    Futur Membre du Club
    Inscrit en
    Février 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Février 2007
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Elles ne sont pas toutes forcement cochees mais lorsqu'une est cochee , l'autre ne doit pas l'etre !

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/06/2015, 17h54
  2. Réponses: 2
    Dernier message: 03/02/2014, 09h38
  3. Réponses: 6
    Dernier message: 28/07/2011, 11h43
  4. Réponses: 14
    Dernier message: 06/08/2004, 15h12
  5. [VB6] [ADO] Like sur base Access
    Par dlpxlid dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 24/01/2003, 11h03

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