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 :

[A2K] - Choix multicritères + relations


Sujet :

IHM

  1. #1
    Membre régulier Avatar de DeFCrew
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 167
    Points : 94
    Points
    94
    Par défaut [A2K] - Choix multicritères + relations
    Bonjour à tout le monde,

    Voilà je me trouve face à une situation quelque peut dérangeante

    J'ai un formulaire dans lequel il y a une recherche multi-critères sur la base du tutorial de Caféine. (fonctionne très bien d'ailleurs MERCI)

    Donc dans la zone de liste on double clic sur une ligne et on arrive sur un autre formulaire qui permet de modifier la ligne séléctionnée.(jusque là no problem)

    Le soucis intervient à partir du moment ou la ligne séléctionnée comporte la même référence produit qu'une autres ligne, car dans ce cas, toutes modifications apporté sur l'une, affecte automatiquement l'autre.

    J'ai une idée du pourquoi : (mais pas de solution)

    Pour me simplifier la vie il suffit juste de rentrer, dans le deuxième formulaire, une référence produit pour que toutes les étapes de fabrication apparaisse automatiquement. (vive les relations)

    Sa fonctionne très bien, tant que deux lignes n'ont pas la même référence produit.
    A contrario, même avec un numéro spécifique à chaque commande, j'obtient un pur copier coller de la commande ayant la même référence.

    Si vous avez compris mon problème, avez-vous une idée du chmilblik ?

    Merci par avance

  2. #2
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    bjr,

    c'est au niveau de la conception que ça n'est pas clair

    tu dis :
    il suffit juste de rentrer [...] une référence produit pour que toutes les étapes de fabrication apparaisse automatiquement
    c'est à dire? il y une relation quelque part sur la référence produit uniquement?
    entre un articles et sa gamme de fabrication donc?

    dur dur pour celui qui te lis, tu parles comme si on connaissait ta base :
    référence produit, étapes de fabrication, commande ...

    tout ça nous on ne sait pas comme c'est présenté dans ta base...

  3. #3
    Membre régulier Avatar de DeFCrew
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 167
    Points : 94
    Points
    94
    Par défaut
    Tu as raison lol,

    Et bien en fait oui j'ai une requete Article avec la référence produit d'un produit [Ref], et son numéro de fabrication [NumMontage].

    NumMontage vas ensuite chercher dans une table nommé Prod le NumMontage correspondant et ses étapes de fabrication [Etape1(1), Etape1(2), etc] jusqu'à [Etape6(6)].

    Le tout donne une requete appelé RqtEtape où le tout est rassemblé :

    RqtEtape = Ref, NumMontage, Etape1(1),...

    C'est là qu'après avoir double cliqué sur une ligne pour la modifier (Modifier = valider les étapes en cliquant sur un bouton pour chaque etape), que le problème commence.

    Lorsqu'une etape est valider, la zone de texte concernée devient verte et un cadenas apparait pour signifier qu'elle est vérouillée.

    Les données de verrouillage sont regrouper dans une table nommé Medias(j'ai oublié de changer le nom, trop tard maintenant) à la suite des données concernant la commande client en cours (le tout sur une seule ligne donc pour chaque commande)
    C'est la que la ListBox, pour la recherche multi-critères, vient piocher des information.

    Et donc, lorsque je clique sur une ligne de la ListBox pour valider des étapes et qu'une autre ligne a la même référence produit que la ligne séléctionné au préalable, et bien les étapes validé sont les même que chaque commande qui aurait la même référence.

    En clair, il m'est impossible de différencier une commande si elle à la même référence qu'une autre . Alors que si la Référence n'est pas la même, tout fonctionne pour le mieux du monde.

    J'éspère avoir été plus clair que tout à l'heure.

    Grand Merci d'avance

  4. #4
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    Prod est une table qui liste les étapes nécessaires à la production d'un article si j'ai bien saisi
    elle est liée aux articles par le [NumMontage]

    donc il y a bien un soucis

    Tu passes une commande sur un article
    L'article a un numéro de montage qui fait le lien avec la table Prod
    Tu passes ensuite une autre commande sur le même article
    Et là tu te retrouves avec deux commandes qui sont liées à la table Prod avec la même Clé

    Je pense qu'il faut revoir la conception :

    En gros le principe habituel (en tout cas tel que je l'ai vu) :

    Une table Articles
    Une table Prod
    Une table Commande
    Une table ProdEnCours

    Si tu passes une commande :
    - tu choisis l'article
    - un petit bout de code génère un [numéro de production] (ou voir même simplement un numéro auto dans la commande)
    - ce [numéro de production] est stocké dans la table commande
    - les étapes de production sont copiées de la table Prod vers la table ProdEnCours, en ajoutant le [numéro de production] en clé
    - tu peux ensuite suivre la production liée à une commande avec une jointure sur le [numéro de production]

    Si tu n'as qu'un article par commande, tu peux utiliser le numéro de commande au lieu du [numéro de production]
    (Mais est ce une bonne solution de limiter à un article par commande...?)

    En tout cas tu ne peux pas réutiliser la table Prod, il faut copier les étapes pour générer des étapes dépendantes de la commande et non pas de l'article uniquement.

  5. #5
    Membre régulier Avatar de DeFCrew
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 167
    Points : 94
    Points
    94
    Par défaut
    Merci pour l'info, je vais tester tout sa tout de suite et je te dirai ce qu'il en est.

    Il me semblai bien qu'il y avait quelque chose avec les liens que j'avais fait.

    P.S : la limitation à une commande est voulu, pas de souci de ce côté là.

    MERCI MERCI MERCI

  6. #6
    Membre régulier Avatar de DeFCrew
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 167
    Points : 94
    Points
    94
    Par défaut
    Désolé de revenir , je sais que sa va paraitre stupide mais depuis tout à l'heure je recherche dans la FAQ et je ne trouve pas le moyen de copier des champs d'une table à une autre comme tu me l'a si bien expliquer.

    J'ai bien compris ta réponse, mais là, je galère juste pour sa.

    Tu sais comment on fait pour copier d'une table à une autres ?

    MERCI

  7. #7
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    oui la copie c'est pas le plus simple

    avec une requête insertion par exemple
    je pense sur l'événement "Après mise à jour" du formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CurrentDb.Execute "Insert into ProdEncours (NumérodeCommande, Les autres champs ...) 
    Select " & me.NumCommande & ",Les autres champs... 
    From Prod where article = '" & me.refarticle & "'"
    NumérodeCommande : le champ qui contient le numéro de commande
    Les autres champs ... : la liste des autres champs séparés par une virgule
    me.NumCommande : le numéro de commande sur le formulaire
    article : le champ article de la table Prod
    me.refarticle : l'article sur le formulaire

    Y a sûrement besoin de bidouiller un peu pour faire fonctionner tout ça mais c'est l'esprit...
    En rajoutant dbFailOnError à l'instruction Execute tu peux récupérer l'erreur d'insertion et la gérer (au cas où ...)

  8. #8
    Membre régulier Avatar de DeFCrew
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 167
    Points : 94
    Points
    94
    Par défaut
    Merci Arkham46 c'est pas la première fois que tu m'aide et je t'en remercie sincèrement.

    BIG UP

    PS : Je te tiens au courant.

  9. #9
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    je pense sur l'événement "Après mise à jour" du formulaire :
    oops, en fait je pensais "Après insertion", c'est utile de faire la copie que quand on crée une nouvelle commande, pas à chaque modification...

  10. #10
    Membre régulier Avatar de DeFCrew
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 167
    Points : 94
    Points
    94
    Par défaut
    Bonjour Arkham46 et les autres,

    Je voulais juste demander une ptite aide.

    Je n'arrive pas à enlever le bug decrit plus haut bien que j'ai réussi à faire une table ProdEnCours avec donc un CodProd, Réf,NumMontage, etape1(1),....

    J'ai créée une requête combinant les commande avec les ProdEnCours.
    Mais le bug perciste toujours.

    Si un produit à la même référence alors le CodProd devient celui du produit qui portai le référence avant lui.

    Sa va maintenant faire 2 jours que je sui dessus et je commence à croire qu'il n'y a pas de fin.

    Enfin, si quelqu'un pouvait m'aider je lui serai eternellement reconnaissant.

Discussions similaires

  1. Choix entre relation ternaire et binaire
    Par fayafi12 dans le forum Diagrammes de Classes
    Réponses: 2
    Dernier message: 16/03/2015, 19h04
  2. [XL-2007] Choix multicritères dans listbox
    Par stephadm dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/12/2011, 10h37
  3. [AC-2007] Simplification code choix multicritères
    Par christophe31 dans le forum VBA Access
    Réponses: 2
    Dernier message: 29/03/2010, 09h18
  4. [Débutant] Choix entre attribut par relation & aggrégation/composition ?
    Par GrandFather dans le forum Diagrammes de Classes
    Réponses: 14
    Dernier message: 04/12/2006, 10h12
  5. Réponses: 2
    Dernier message: 01/10/2005, 18h42

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