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

Access Discussion :

Liste : Pb lors du second enregistrement


Sujet :

Access

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

    Informations forums :
    Inscription : Novembre 2005
    Messages : 20
    Points : 7
    Points
    7
    Par défaut Liste : Pb lors du second enregistrement
    Bonjour,

    Dans un formulaire de gestion d'articles, j'ai un sous-formulaire qui me permet de gérer les catégories et la sous-catégories des articles, sachant qu'un article peut-être dans plusieurs categorie/sscategorie.

    Après un choix de catégorie, la sous-catégorie correspondante se charge correctement. Une fois celle-ci choisie l'enregistrement est correctement effectuée dans une table Regroup[id_regroup, id_sscategorie, id_article].

    Pour le chargement de la seconde liste (sous_categorie), j'utilise la procédure suivante :

    http://access.developpez.com/sources...s#FiltrerListe

    Le pb est qu'une fois le premier enregistrement effectué, la liste Categorie du second se place directement sur le même choix que le premier enregistrement. Et si je choisis une catégorie, la catégorie du premier enregistrement se met à la même valeur (donc pb).

    Comment puis-je faire ?

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    En fait je pense cerner le pb.

    En fait si je reviens sur un enregistrement déjà effectué, la catégorie n'est pas retrouvée. La sous_categorie si.

    Les tables sont orgnaisées ainsi :

    Table Categorie
    - id_categorie
    - nom_categorie

    Table Sous Categorie
    - id_sscategorie
    - nom_sscategorie
    - id_categorie (clé étrangère)

    Table RegroupSSCategorie_Article
    - id_regroup
    - id_article (clé étrangère)
    - id_sscategorie (clé étrangère)

    Table Article
    - id_article
    - nom_article

    Les enregistrement sont stockés dans la table RegroupSSCategorie_Article où n'apparaît pas l'id_categorie.

    Comment dois-je faire pour que les infos de la première liste soient retrouvées ?

  3. #3
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Slt,
    Juste une question :
    Chaque article a t'il obligatoirement une Catégorie ? NON ?
    Si oui, je pense que ta table Table RegroupSSCategorie_Article est de trop dans ta conception !!
    Exemple:
    Catégorie : Primeur, Conserves, etc
    SousCatégorie : Fruit, Boites, Bouteilles, etc
    Article : Tomate, Jus d'orange, lait, PQ , etc

    Lorsque que tu veux "classer" tout cela, il faut partir du principe que chaque article "appartient a une SousCatégorie DONC a une Catégorie !!!
    Et je peux mettre un article dans plusieurs Catégorie et SousCatégorie !!

    Catégorie Conserve; SousCatégorie Boites; Article Tomates
    Catégorie Primeur; SousCatégorie Fruit; Article Tomates
    Et ainsi de suite !
    Ta table Table RegroupSSCategorie_Article ne fait que "doubler" le travail d'Accèss qui est d'ordonner tes données !
    Avant d'aller plus loin, je pense que tu devrais regarder déja cela, a moins que j'ai raté quelque chose !!
    La connaissance ne vaut que si elle est partagée par tous et pour tous!
    Access et moi c'est mais en fait on s' bien !
    Ps: Je comprend très vite quand on m'explique longtemps !!

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

    Informations forums :
    Inscription : Novembre 2005
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Pour répondre à ta question, la catégorie n'est pas directement reliée à l'article. La liste catégorie permet de filtrer les sous-catégories qui elles, sont véritablement reliées à l'article. En effet il y aun nombre important de sous_categories.

    Si je n'utilisais qu'une liste sous_categorie, il n'y aurait pas de pb. Malheureusement, il faut un filtre préalable (Categorie) qui affiche une sélection desous_categorie.

    L'enregistrement s'effectue correctement mais je pense qu'il faut une fonction complémentaire lors du chargement des informations pour aller récupérer la catégorie à partir des infos des Regroup et Sous Catégorie.

    Et ça je ne sais pas faire ... As-tu une idée ?
    Me trompais-je sur le fonctionnement ?

    Je ne vois pas comment tu stockes dans ton exemple la relation entre la sous_categorie et l'article sachant qu'un article peut être dans plusieurs sous_categorie et qu'une sous_categorie peut contenir plusieurs articles.
    Pour moi il faut une table intermédiaire non ?

  5. #5
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Et bien ???
    1/
    Pour répondre à ta question, la catégorie n'est pas directement reliée à l'article. La liste catégorie permet de filtrer les sous-catégories qui elles, sont véritablement reliées à l'article. En effet il y aun nombre important de sous_categories.
    Si je n'utilisais qu'une liste sous_categorie, il n'y aurait pas de pb. Malheureusement, il faut un filtre préalable (Categorie) qui affiche une sélection desous_categorie.
    Dans mon exemple j'était loin de penser que ta table Catégorie n'est la que pour filtré les Sous catégorie !!!!
    Déja ça c'est pas bon il faut reflechir autrement !!
    Un jour des Gros bras d'Accèss d'ici m'ont dit :
    "Ne pense pas en terme de fonctionnalité quand tu crée tes tables mais en logique PURE!"
    Pour ton exemple :
    J'ai un article :
    Qu'est-ce qui est unique à cet article ? (Direct dans la table article !)
    Son Nom, etc....
    Qu'est-ce qui ne l'est pas ? (Dans une autre table !)
    Sa catégorie, son prix, son conditionnement, etc tout cela peut varier il me semble !!!!
    2/
    Je ne vois pas comment tu stockes dans ton exemple la relation entre la sous_categorie et l'article sachant qu'un article peut être dans plusieurs sous_categorie
    Dans l'exemple, mes tomates ne sont pas dans deux sousCatégories différentes
    J'en ai mis deux mais il peut y en avoir a l'infini !!!!!!
    L'immagination me manque, mais il suffit de penser a toutes les déclinaisons que peut prendre des tomates
    Catégorie Conserve; SousCatégorie Boites; Article Tomates
    Catégorie Primeur; SousCatégorie Fruit; Article Tomates
    et qu'une sous_categorie peut contenir plusieurs articles. Pour moi il faut une table intermédiaire non ?
    Ben NON :
    Catégorie Conserve; SousCatégorie Bouteilles; Article Tomates
    Catégorie Conserve; SousCatégorie Bouteilles; Article Lait
    Catégorie Conserve; SousCatégorie Bouteilles; Article Crème anglaise

    Et dans cet exemple tu les retracent toutes !

    Et quand je rapelle la SousCatégorie Bouteilles et que je veux voir tous les articles de cette SousCatégorie j'ai
    Tomates, Lait, Créme Aglaise, etc......
    Mais je peux savoir aussi qu'une tomate est aussi déclinée en Fruit, en Boite, etc...
    J'ai donc bien la possibilité de mettre plusieurs articles dans une sousCatégorie et en plus, dans chaque SousCatégorie, la possibilité de mettre un article déja présent dans une sousCatégorie !!!!!

    ça donne

    Table Catégorie:
    IdCatégorie
    Nom
    Etc

    Table SousCatégorie
    IdSousCatégorie
    IdCatégorie (clef étrangère)
    IdProduit (clef étrangère)
    Nom
    etc

    Table Produit
    IdProduit
    IdSousCatégorie (clef étrangère)
    Nom
    Etc

    En gras les clefs primaires !!

    Je n'ai pas de table qui retrace les relations !!!
    Je les ai toutes là !!!!!!!

    Et dans tes listes déroulantes tous sera en relation sans problème !!!

    Bonne lecture !
    La connaissance ne vaut que si elle est partagée par tous et pour tous!
    Access et moi c'est mais en fait on s' bien !
    Ps: Je comprend très vite quand on m'explique longtemps !!

  6. #6
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Re,
    Table Produit
    IdProduit
    IdSousCatégorie (clef étrangère)
    Nom
    Etc
    Erreur
    Je n'est pas besoins de
    IdSousCatégorie (clef étrangère)
    dans cette table....
    Ce n'est pas la catégorie qui est lié a un article mais l'inverse.....
    Et l'inverse est déja tracé....
    Table SousCatégorie
    IdSousCatégorie
    IdCatégorie (clef étrangère)
    IdProduit (clef étrangère)
    Nom
    etc
    @+
    La connaissance ne vaut que si elle est partagée par tous et pour tous!
    Access et moi c'est mais en fait on s' bien !
    Ps: Je comprend très vite quand on m'explique longtemps !!

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Donc tu recréés des occurrences de sous catégories pour chaque nouvel article... non ?

    Pour moi ce n'est pas très propre (SQLment parlant...)

    Ex : Sous catégorie
    idsscat - idcat - idproduit - nom
    1 - 1 - 1 - Boite
    2 - 1 - 2 - Boite
    ...
    et tu es obligé par la suite si tu effectues des recherches de la faire sur le champ nom (pas de clé pour une sous_categorie)

  8. #8
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Citation Envoyé par Rouanou
    Donc tu recréés des occurrences de sous catégories pour chaque nouvel article... non ?

    Pour moi ce n'est pas très propre (SQLment parlant...)

    Ex : Sous catégorie
    idsscat - idcat - idproduit - nom
    1 - 1 - 1 - Boite
    2 - 1 - 2 - Boite
    ...
    et tu es obligé par la suite si tu effectues des recherches de la faire sur le champ nom (pas de clé pour une sous_categorie)
    Re,
    Et Oui!!!!
    !!!!!!!!!
    Hummmmm.....................................
    La liste catégorie permet de filtrer les sous-catégories qui elles, sont véritablement reliées à l'article.
    Hummmmm.....................................
    Mais ça :
    Table RegroupSSCategorie_Article
    - id_regroup
    - id_article (clé étrangère)
    - id_sscategorie (clé étrangère)
    ça va pas !
    Il faut donc bien créer une ligne dans une table qui retrace ces données non?
    Alors, il faut changer ta table Article comme suit :
    Id Article
    IdSousCatégorie (clef etrangère)
    Nom

    Psouble clef !(un article a forcément une sous catégorie mais une seule!)
    Mais je peux mettre plusieurs fois la même SousCatégorie pour différent produit !

    Et aussi SousCatégorie :
    IdSousCatégorie
    IdCatégorie
    Nom

    Comme quoi t'a bien fait de me reprendre !!!
    La connaissance ne vaut que si elle est partagée par tous et pour tous!
    Access et moi c'est mais en fait on s' bien !
    Ps: Je comprend très vite quand on m'explique longtemps !!

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    et bien non justement un article peut être dans plusieurs sous_catégorie dans mon cas !
    C'est la raison de la table intermédiaire.

    En SQL, lorsque on ne peut déterminer précisément l'élement de la table associée et vice-versa (relation infini/infini), j'ai appris qu'il faut créer une table intermédiaire (ma table Regroup). C'est le seul moyen d'associer les éléments.

  10. #10
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Citation Envoyé par Rouanou
    et bien non justement un article peut être dans plusieurs sous_catégorie dans mon cas !
    C'est la raison de la table intermédiaire.
    ???????
    Je comprend plus là??????
    Si un article disons mes tomates sont dans plusieurs souscatégories !
    Dans l'hypothèse
    Id Article
    IdSousCatégorie (clef etrangère)

    Nom
    J'ai donc la possibilité d'avoir (N° IdArtcle de mes tomates 101)

    N°101; IdSousCat N°27
    N°101; IdSousCat N°28
    N°101; IdSousCat N°35
    N°101; IdSousCat N°59

    Mais je ne pas avoir
    N°101; IdSousCat N°27
    N°101; IdSousCat N°27
    c'est le but de la double clef Primaire PAS de DOUBLONS
    Mais je retrace bien les différentes possibilitées !!!!
    Ou vois-tu le problème?
    La connaissance ne vaut que si elle est partagée par tous et pour tous!
    Access et moi c'est mais en fait on s' bien !
    Ps: Je comprend très vite quand on m'explique longtemps !!

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    Dans ton exemple ta table Article ressemblerait à cela (enregistrements) :

    ...
    Id Article - nom article - Id SSCat ...
    1 - Tomate - 10
    1 - Tomate - 12
    1 - Tomate - 13
    2 - Frais - 55
    ...

    C'est cela ?

  12. #12
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Heu, oui
    Si ton IdArticle n'est pas autoIncrémenté !!!!

    Le VRAI N° article est (Double clef primaire)
    1er ligne (110)
    2eme ligne (112)
    Etc

    Mais je commence a comprendre ce qui te gène :
    C'est la répétition des données dans une table !
    Et comme un j'avais pas vu cela comme ça

    Mais si tu tiens a ne pas avoir de tables Articles ou SousCatégorie avec des redonnantes, utilise ta Table Relation !!!

    Et la répétition des données sera dans cette table !!
    Et oui.........
    1;10
    1;12
    1;13
    2;55
    2;60
    2;78
    3;10
    3;12

    Reflexion faite, je crois que je me suis égaré.......
    C'est plus propre comme ça!
    Il parait qu'il n'y que les imbéciles qui ne changent pas d'avis!!!
    Mais dans le fond, j'en fait un beau par moment

    Par contre il te faudra la construire sans IdRelation...
    Mais simplement avec comme clef primiare
    IdSousCatégorie
    IdArticle

    Gare aux doublons sinon !!!
    Car sinon, je pourrai faire:
    IdRelation;IdArticle;IdSousCatégorie
    1;1;10
    2;1;10
    3;1;10
    4;1;12
    5;1;12
    6;1;12
    etc.....
    Du coup on en crée beaucoup de redonnance ...

    Pour en revenir a ton problème de départ, (ouf, enfin) il te faut créer, dans ta 1er liste, le SQL en partant de la table Catégorie LeftJoin la SousCatégorie
    Et la seconde avec le Sql sur la Table SousCatégorie relation1/1 Ta table Relation avec LeftJoin la TableArticle!

    Et je pense qu'il te faut passer par cette méthode pour que ces listes soit dépendantes les une des autres en fonction du choix fait dans cette liste:
    http://access.developpez.com/faq/?page=zdl#LierZdl

    De cette façon, afterMaj de la liste Catégorie tu va ensuite vers la liste SousCatégorie filtrée selon la liste catégorie et enfin vers les articles filtrés selon la SousCatégorie !!!

    La prochaine fois, promis, je reflechirai un peu plus avant toute chose !!
    La connaissance ne vaut que si elle est partagée par tous et pour tous!
    Access et moi c'est mais en fait on s' bien !
    Ps: Je comprend très vite quand on m'explique longtemps !!

Discussions similaires

  1. Problème lors d'un second enregistrement.
    Par Jeano81 dans le forum VB.NET
    Réponses: 25
    Dernier message: 06/03/2015, 13h45
  2. pb lors d'un enregistrement
    Par Little-Freud dans le forum Access
    Réponses: 3
    Dernier message: 27/10/2004, 02h27
  3. Retourner l'ID lors de l'enregistrement
    Par nmerydem dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 28/09/2004, 10h20
  4. Réponses: 1
    Dernier message: 23/02/2004, 12h58

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