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

4D Discussion :

selectionner des donnees sur 3 tables


Sujet :

4D

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Points : 8
    Points
    8
    Par défaut selectionner des donnees sur 3 tables
    Bonjour à tous ,
    je dispose de 3 tables 4D, une table "professeurs"(champs : [professeurs]prof_num),liee a une table "connaitre" (champs [connaitre]prof_num et [connaitre]code_matiere)elle mêmee liee a une table "matiere". (champs [matiere]code_matiere et[matiere]intitule_matiere);
    je souhaiterais faire une requete me permettant par la suite d'afficher l'intitulé des matieres connue pour chaque professeur.
    J'ai réussi a afficher les code_matiere pour chaque professeur mais il serait beaucoup plus interessant d'en afficher l'intitulé.
    En attendant une réponse, merci par avance.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 80
    Points : 84
    Points
    84
    Par défaut
    Bonjour,

    pour cela, je te conseille de faire des tableaux, cela te permet en plus d'être très rapide. Je ferai qqchose dans le genre (je ne suis pas très bon avec les emnse^ble, masi avec la doc, tu devrais y arriver) :

    ensemble vide ($MonEnsemble)
    chercher([connaitre];[connaitre]prof_num=[professeurs]prof_num)
    selection vers tableau([connaitre]code_matiere;$TbCMatiere)
    boucle($a;1;$TbCMatiere)
    chercher([matiere];[matiere]code_matiere = $TbCMatiere{$a})
    ajouter a ensemble(selection;$MonEnsemble)
    fin de boucle

    Utiliser ensemble ($MonEnsemble)
    selection vers tableau([matiere]intitule_matiere;TbIntMat)
    supprimer ensemble($MonEnsemble)


    et puis dans un formulaire d'affichage, tu utilises le tableau TbIntMat

    Patrick

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    Merci je pense que grace a toi je ne partirais pas sur une fausse piste

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Points : 8
    Points
    8
    Par défaut Nouvelle piste
    Me revoila j'ai réfléchi a autre chose qui donne presque que le resultat espere sauf que lorsqu'un professeur connait plusieurs matieres seule la dernier connue s'affiche grace a la methode suivante :

    CHERCHER([MATIERES];[MATIERES]Code_Matiere=[CONNAITRE]Code_Matiere)

    Si ((Enregistrements trouves([MATIERES])>0)
    TABLEAU ALPHA(25;Matiere_connue;Enregistrements trouves([MATIERES]))

    SELECTION VERS TABLEAU([MATIERES]Matiere;Matiere_connue)
    Fin de si

    Mattiere_connue étant une zone de défilement.

    Y-aurait-il une boucle a placer judicieusement dans ce code ?

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 80
    Points : 84
    Points
    84
    Par défaut
    C'est bien pour cela que je t'avais orienté avec les ensembles, comme cela tu es sur de tous les avoir.
    SI tu utilises une boucle, dans la première occurence, il te faut faire 'selection vers tableau' puis dans les suivantes, faire à nouveau 'selection vers tableau' et copier ce nouveau tableau à la fin du premier.
    J'espère que cela est suffisemment clair

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    Oui merci beaucoup pour ton aide j'y suis enfin arrivé ! :-)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ASE][T-SQL]droits des user sur une table...
    Par arona dans le forum Sybase
    Réponses: 3
    Dernier message: 11/05/2006, 21h48
  2. Ordre de sélection des lignes sur une table DB2
    Par Pierre Formosa dans le forum DB2
    Réponses: 1
    Dernier message: 26/04/2006, 20h03
  3. Réponses: 2
    Dernier message: 21/04/2006, 12h09
  4. Réponses: 6
    Dernier message: 18/08/2005, 16h26
  5. [] Impression des donnees sur etiquettes
    Par der dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 03/12/2002, 15h43

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