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

Requêtes et SQL. Discussion :

Tables liées et requêtes parametrées


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut Tables liées et requêtes parametrées
    Bonjour ,
    je suis entrain de creer une base de donnees se basant sur plusieurs tables.
    les tables principales sont:
    Data_Hyper , Data_Super, Data_Proxi ( les champs sont identiques)
    Entrepots , Reseaux , et Activites
    Sachant que ces tables sont liés entre elle , je voudrais qu'a partir d'un formulaire tirer des resultats .
    je serai a l'ecoute pour les qst , je sais que je suis pas assez clair et que c'est trop vague , mais j'attend vos qst pour qu'on puisse contourner le soucis
    je signale le soucis est de faire une requete paramatree

  2. #2
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Bonjour,

    Comment sont reliées tes tables... Aurais tu une description des colonnes... Que souhaites tu comme résultat ?


  3. #3
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 048
    Points
    34 048
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par Chikatilo Voir le message
    Data_Hyper , Data_Super, Data_Proxi ( les champs sont identiques)
    Sur le plan conceptuel, qu'est ce qui justifie qu'il y ait trois tables si elles ont des colonnes identiques ?

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    Alors ce que je veux faire,
    quand je choisi le LB_Reseaux (cad : soit Hyper , Super ou proxi) je dois tirer les informations des tables qui vont avec , pour cela j'ai fait le code suivant et ca veut executer:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    SELECT RESEAUX.LB_RESEAUX FROM RESEAUX
    WHERE RESEAUX.LB_RESEAUX = 'HYPER' (SELECT DATA_HYPER.N°audit, DATA_HYPER.UE, DATA_HYPER.CD_ENT, DATA_HYPER.LB_ENT, DATA_HYPER.Mag, DATA_HYPER.Ano, DATA_HYPER.Audités, DATA_HYPER.[Ecart Fin], DATA_HYPER.PCI
    FROM DATA_HYPER
    WHERE (((DATA_HYPER.Date) Between [Formulaires]![CATB]![DATE_DEB] And [Formulaires]![CATB]![DATE_FIN]))
    GROUP BY DATA_HYPER.N°audit, DATA_HYPER.UE, DATA_HYPER.CD_ENT, DATA_HYPER.LB_ENT, DATA_HYPER.Mag, DATA_HYPER.Ano, DATA_HYPER.Audités, DATA_HYPER.[Ecart Fin], DATA_HYPER.PCI
    ORDER BY DATA_HYPER.CD_ENT;)
     
    OR RESEAUX.LB_RESEAUX = 'SUPER' (SELECT DATA_SUPER.N°audit, DATA_SUPER.UE, DATA_SUPER.CD_ENT, DATA_SUPER.LB_ENT, DATA_SUPER.Mag, DATA_SUPER.Ano, DATA_SUPER.Audités, DATA_SUPER.[Ecart Fin], DATA_SUPER.PCI
    FROM DATA_SUPER
    WHERE (((DATA_SUPER.Date) Between [Formulaires]![CATB]![DATE_DEB] And [Formulaires]![CATB]![DATE_FIN]))
    GROUP BY DATA_SUPER.N°audit, DATA_SUPER.UE, DATA_SUPER.CD_ENT, DATA_SUPER.LB_ENT, DATA_SUPER.Mag, DATA_SUPER.Ano, DATA_SUPER.Audités, DATA_SUPER.[Ecart Fin], DATA_SUPER.PCI;)
     
    OR RESEAUX.LB_RESEAUX = 'PROXI' (SELECT DATA_PROXI.N°audit, DATA_PROXI.UE, DATA_PROXI.CD_ENT, DATA_PROXI.LB_ENT, DATA_PROXI.Mag, DATA_PROXI.Ano, DATA_PROXI.Audités, DATA_PROXI.[Ecart Fin], DATA_PROXI.PCI
    FROM DATA_PROXI
    WHERE (((DATA_PROXI.Date) Between [Formulaires]![CATB]![DATE_DEB] And [Formulaires]![CATB]![DATE_FIN]))
    GROUP BY DATA_PROXI.N°audit, DATA_PROXI.UE, DATA_PROXI.CD_ENT, DATA_PROXI.LB_ENT, DATA_PROXI.Mag, DATA_PROXI.Ano, DATA_PROXI.Audités, DATA_PROXI.[Ecart Fin], DATA_PROXI.PCI;)
    ;
    et je recois une erreur de type : utilisation non valide des '.', '!' et'()' est ce quelqu"un pourrait me donner un coup de pouce ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    je vous joins les tables que j'ai créé. merci de votre aide
    ce que je souhaite c'est que en choisissant le LB_Reseaux , je choisisse les donnees de la table corresopndantes

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    J'ai toujours pas de reponse est ce quelquen pourrai me donner un coup de main ?
    en vous remerciant

  7. #7
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Bonjour,
    Déjà évite le SMS

    J'ai tjs pas dde reponse est ce quelquen pourrai me donner un coup de main ?
    en vous remerciant
    Il y a une signature qui dit en gros: " Le premier langage à apprendre en informatique c'est le francais"
    alors merci de parler... en français et pas en langage SMS.

    Et, ... j'y travaille..

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    Merci , j'y compte beaucoup sur votre aide
    et desolé pour le language SMS je me suis pas rendu Compte

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    Bonjour ,
    j'attends toujours votre aide , je peux pas avancer , j'ai verifier partout sans resultats.
    je vous remercie

  10. #10
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 048
    Points
    34 048
    Billets dans le blog
    14
    Par défaut
    Reprenons depuis le début...

    D'après ce que je vois sur ton schéma de relations entre tables, il s'agit d'enregistrer des audits effectués sur des entrepôts de magasins, non ?

    Comme je le pensais, tes 3 tables 'data_x' pourraient être réunies en une seule.

    Si 'LB' veut dire 'Libellé', il vaut mieux que tes tables 'Activites' et 'Reseaux' comportent une clé primaire de type NumeroAuto et que cette clé primaire serve de clé étrangère dans la table 'Entrepots'.

    À quelle notion correspond la table 'UE' ?

    D'où vient 'LB_ENT' qui semble être commun à toutes les tables ?

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    Bonjour ,
    deja je te remercie pour m'avoir repondu.
    pour LB_Ent : c'est les noms des entrepots qui different d'une table a une autre.
    donc comme je l'ai signalé, j'ai deja un formulaire qui me permet d'afficher les resultats de chaque type de reseaux .
    j'ai mis des cases a cocher , si la case 1 est coché alors je choisi DATA_HYper si case2 est coxher ->je prend data super ...
    les data_X sont des importations des fichiers Excel et les champs mis sur la table correspondent au colonne Exel.
    les utilisateurs devront faire l'importation chaque semaine , donc si je cree un champs ds la table , est ce que ca va gener ?

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    Vu que je vais passer par des formulaires j'ai pu faire ce code , mais malheureusement il ne marche pas , il me signale qu'il y a un parametre manquant et je voit l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    SELECT RESEAUX.LB_RESEAUX
    FROM RESEAUX INNER JOIN (((ENTREPOTS INNER JOIN DATA_HYPER ON ENTREPOTS.CD_ENT = DATA_HYPER.CD_ENT) INNER JOIN DATA_PROXI ON ENTREPOTS.CD_ENT = DATA_PROXI.CD_ENT) INNER JOIN DATA_SUPER ON ENTREPOTS.CD_ENT = DATA_SUPER.CD_ENT) ON RESEAUX.LB_RESEAUX = ENTREPOTS.LB_RESEAUX
     
    WHERE (([Formulaires]![CATB]![Cocher1_HYPER]="VRAI" And [Formulaires]![CATB]![Cocher2_SUPER]="FAUX")) ( SELECT DATA_HYPER.N°audit, DATA_HYPER.UE, DATA_HYPER.CD_ENT, DATA_HYPER.LB_ENT, DATA_HYPER.Mag, DATA_HYPER.Ano, DATA_HYPER.Audités, DATA_HYPER.[Ecart Fin], DATA_HYPER.PCI FROM DATA_HYPER
    WHERE (((DATA_HYPER.Date) Between [Formulaires]![CATB]![DATE_DEB] And [Formulaires]![CATB]![DATE_FIN]))
    GROUP BY DATA_HYPER.N°audit, DATA_HYPER.UE, DATA_HYPER.CD_ENT, DATA_HYPER.LB_ENT, DATA_HYPER.Mag, DATA_HYPER.Ano, DATA_HYPER.Audités, DATA_HYPER.[Ecart Fin], DATA_HYPER.PCI
    ORDER BY DATA_HYPER.CD_ENT)
     
    OR (([Formulaires]![CATB]![Cocher1_HYPER]="FAUX" And [Formulaires]![CATB]![Cocher2_SUPER]="VRAI")) (SELECT DATA_SUPER.N°audit, DATA_SUPER.UE, DATA_SUPER.CD_ENT, DATA_SUPER.LB_ENT, DATA_SUPER.Mag, DATA_SUPER.Ano, DATA_SUPER.Audités, DATA_SUPER.[Ecart Fin], DATA_SUPER.PCI
    FROM DATA_SUPER
    WHERE (((DATA_SUPER.Date) Between [Formulaires]![CATB]![DATE_DEB] And [Formulaires]![CATB]![DATE_FIN]))
    GROUP BY DATA_SUPER.N°audit, DATA_SUPER.UE, DATA_SUPER.CD_ENT, DATA_SUPER.LB_ENT, DATA_SUPER.Mag, DATA_SUPER.Ano, DATA_SUPER.Audités, DATA_SUPER.[Ecart Fin], DATA_SUPER.PCI)
     
    OR (([Formulaires]![CATB]![Cocher3_PROXI]="VRAI")) (SELECT DATA_PROXI.N°audit, DATA_PROXI.UE, DATA_PROXI.CD_ENT, DATA_PROXI.LB_ENT, DATA_PROXI.Mag, DATA_PROXI.Ano, DATA_PROXI.Audités, DATA_PROXI.[Ecart Fin], DATA_PROXI.PCI
    FROM DATA_PROXI
    WHERE (((DATA_PROXI.Date) Between [Formulaires]![CATB]![DATE_DEB] And [Formulaires]![CATB]![DATE_FIN]))
    GROUP BY DATA_PROXI.N°audit, DATA_PROXI.UE, DATA_PROXI.CD_ENT, DATA_PROXI.LB_ENT, DATA_PROXI.Mag, DATA_PROXI.Ano, DATA_PROXI.Audités, DATA_PROXI.[Ecart Fin], DATA_PROXI.PCI)
     
    ;

  13. #13
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 048
    Points
    34 048
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par Chikatilo Voir le message
    pour LB_Ent : c'est les noms des entrepots qui different d'une table a une autre.
    Donc tu as une redondance d'information entre la table Entrepots et les tables data_x. Du point de vue conceptuel, c'est pas bon !

    Peux-tu répondre à cette question :
    Citation Envoyé par CinePhil
    D'après ce que je vois sur ton schéma de relations entre tables, il s'agit d'enregistrer des audits effectués sur des entrepôts de magasins, non ?

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    pour ta question oui effectivement.
    et pour le champ LB_Ent je vois pas de redondance parce que ce champs depend du reseaux , c'est a dire les ENT dans les hyper sont pas identique a ceux des super et c'est le cas pour les proxi
    la table entrepots , regroupe tout les entrepots de tous les reseaux

  15. #15
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 048
    Points
    34 048
    Billets dans le blog
    14
    Par défaut
    Le principe général est que dans une base de données on n'enregistre qu'une seule fois l'information.
    Si tu as as 'Entrepôt Hyper Toulouse' dans la table 'Entrepots' et que tu as aussi 'Entrepôt Hyper Toulouse' dans la table 'Data_Hyper', tu as enregistré deux fois 'Entrepôt Hyper Toulouse'.
    Une erreur de saisie et bing ! tu n'as plus de correspondance entre les tables !
    En plus une clé étrangère sur une chaîne de caractères c'est plus long à gérer pour le moteur de base de données.
    Ce que tu as fait avec la table UE est bon par contre : tu utilises la clé primaire de la table 'UE' comme clé étrangère dans les tables 'Data_x'.
    Au fait, je ne sais toujours pas ce que représente 'UE' ?

    Tu devrais aller faire un tour du côté des tutoriels sur la conception des bases de données et notamment la méthode Merise.

    Donc si je reprends ton schéma, je crois comprendre que tu enregistres des audits relatifs à des entrepôts qui font partie chacun d'un réseau pour une activité et pour un certain type de magasins.
    Apparemment, tu ne gères pas les magasins.

    Les mots en gras ci-dessus représentent les entités que tu gères et donc les tables principales que tu dois avoir.

    Maintenant, nous avons des associations entre ces tables. Je détaille la première et je vais plus vite pour les suivantes :
    Entrepots -1,1----Faire partie----0,n- Réseaux
    Ce qui veut dire qu'un entrepôt faire partie d'un et d'un seul réseau et qu'un réseau peut ou pas comporter jusqu'à plusieurs entrepôts.
    Ce qui se traduit par les tables :
    Réseaux(ID_Reseau, LB_Reseau)
    Entrepots(CD_Ent, FK_ID_Reseau, LB_Ent, ...)
    'FK' veut dire 'clé étrangère' (Foreign Key) et reprend la clé primaire de la table Réseaux.

    Idem pour la deuxième association :
    Entrepots -1,1----Concerner----0,n- Activités
    Ce qui donne en plus la table :
    Activites(ID_Activite, LB_Activite)
    Et je modifie la table :
    Entrepots(CD_Ent, FK_ID_Reseau, FK_ID_Activite, LB_Ent, ...)

    Ajoutons la notion de types de magasins. Je vais supposer qu'un entrepôt peut délivrer des marchandises pour n'importe quel type de magasin. On a donc l'association :
    Entrepots -0,n----Livrer----0,n- TypesMagasins
    Ci-dessus, un entrepot peut ou pas livrer juqu'à plusieurs types de magasins (des hypers, des supers et des proxis) et un type de magasin peut être livré ou pas par jusqu'à plusieurs entrepôts.
    J'ajoute la table :
    TypesMagasins(ID_TypeMagasin, LB_TypeMagasin)
    et j'ajoute une table associative qui est composée des clés primaires des deux tables concernées par l'association :
    Livrer(FK_CD_Ent, FK_ID_TypeMagasin)

    On termine avec les audits. Je vais supposer qu'un audit est fait dans un seul entrepot :
    Audits -1,1----Realiser----0,n- Entrepots
    J'ajoute la table :
    Audits(N°Audit, FK_CD_Ent, DateAudit, ...)

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    un grand merci pour le temps que t'as donné a mon soucis .
    t'as tout a fait raison concernant les doublons , j'ai créé les tables a ta facon (ps le champ magasin , je le prend pas en consideration).
    je voudrais savoir si je crée 3 tables audits qui correspondent a chaque type de reseaux , car comme je l'ai dit , se sont pas les memes audits et memes entrepots ?
    apres si je cree ces 3 tables , comment pourrais je selectionner les donnees selon mon choix du reseaux ?
    voir le code SQL que j'ai mis en haut
    un grand merci

  17. #17
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 048
    Points
    34 048
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par Chikatilo Voir le message
    je voudrais savoir si je crée 3 tables audits qui correspondent a chaque type de reseaux , car comme je l'ai dit , se sont pas les memes audits et memes entrepots ?
    Si 1 audit concerne 1 entrepôt, avec les associations entre les tables, on retrouve le réseau auquel appartient l'entrepôt.
    Audits -1,1----Réaliser----0,n- Entrepots -1,1---Faire partie----0,n- Réseaux

    Pour avoir le numéro et la date de l'audit, le libellé de l'entrepôt où il a été réalisé et le nom du réseau dont l'entrepôt fait partie, en bon SQL (pas celui d'Access qui met des parenthèses partout et n'importe comment !), ça donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT a.N°Audit, a.DateAudit, e.LB_Entrepot, r.LB_Reseau
    FROM Entrepots e
    INNER JOIN Audits a ON a.FK_CD_Ent = e.CD_Ent
    INNER JOIN Reseaux r ON r.ID_Reseau = e.FK_ID_Reseau
    Après il suffit d'ajouter une restriction sur le libellé du réseau pour ne plus avoir que les audits d'un réseau en particulier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE r.LB_Reseau = 'toto'

  18. #18
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    Re,
    Je suis vraiment reconnaissant de l'effort et du temps que tu perd avec moi .
    voila , j'ai créé 6 tables:
    Entrepots ( CD_ENT, LB_ENT, FK_Id_RESEAUX, FK_Id_ACTIVITES)
    RESEAUX(Id_RESEAUX,LB_RESEAUX)
    ACTIVITES(Id_ACTIVITES,LB_ACTIVITES)
    AUDITS_HYPER(N°Audit, DATE, FK_CD_ENT,LB_ENT,UE,ANO,AUDITES,TX Serv,ECART FIn, PCI, TX fin)
    AUDIT_SUPER(..)
    AUDIT_proxi(..)
    le soucis que j'ai ,dans ces 3 dernieres tables , j'arrive pas a mettre une clé primaire , vu que je fais qu'importer d'un fichier EXCEL et je vois pas pourquoi ?.
    il y a des entrepots qui font parties des 2 types de reseaux (hyper et super)!!!

  19. #19
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 048
    Points
    34 048
    Billets dans le blog
    14
    Par défaut
    Tu n'avais pas besoin de créer tables d'audits. Une seule devrait être suffisante.
    C'est l'association avec la table Entrepots qui te permet de retrouver les audits par réseau comme démontré dans mon précédent message.

    Je vois dans la définition de la table d'audits que tu as :
    - des audités,
    - des écarts,
    - des ANO (malies ?).

    Ne faudrait-il pas externaliser ça dans d'autres tables, à moins que tu ne gères qu'une liste d'audités par audit (MM. Dupont, Durand...) et seulement un nombre d'anomalies/écarts.

    Je suis un ancien responsable qualité (de 1992 à 2007 avec une interruption de 2 ans) donc je connais le sujet.

    La clé primaire de la table d'audits, normalement, ça devrait pouvoir être le numéro d'audit, sauf si tu as utilisé le même numéro pour les audits de différents type (hyper 1, super 1, proxi 1). Si le numéro d'audit existant ne peut pas convenir, le plus simple est d'ajouter une colonne ID_Audit et de la mettre de type NumeroAuto. Access créera les numéros tout seul.

    Puisque tes données d'audits te viennent de fichiers Excel, je te conseille de suivre la procédure que j'ai décrite dans une autre file de messages (message id #19).

  20. #20
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 217
    Points : 53
    Points
    53
    Par défaut
    je suis tompbé sur la bonne personne ; et je te remercie .
    donc voila ce que j'ai fait , la table audit maintenant elle contient toutes les donnees de touts les reseaux. c'est deja pas mal.
    Le soucis est : que pas ma d'entrepots sont audites dans les 2 reseaux , donc ca va complexé la tache
    audités c'est un champ num = nombre de colis audites
    je suis exactement ta maniere de creer les tables , et je suis daccord avec ce que tu ma proposer.

Discussions similaires

  1. [WD16] Modification table liée à une requête
    Par WDKyle dans le forum WinDev
    Réponses: 6
    Dernier message: 07/01/2015, 17h02
  2. Réponses: 1
    Dernier message: 16/02/2012, 19h40
  3. [WD15] Modifier table liée à une requête
    Par tux59 dans le forum WinDev
    Réponses: 1
    Dernier message: 12/12/2011, 14h12
  4. [WD12] Table liée à une requête et saisie
    Par frenchsting dans le forum WinDev
    Réponses: 5
    Dernier message: 13/10/2011, 13h51
  5. [WD11] Réaffichage d'une table liée à une requête
    Par labifle dans le forum WinDev
    Réponses: 8
    Dernier message: 07/05/2010, 13h30

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