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

  1. #1
    Membre à l'essai
    ListBox et tables liées avec table intermédiaire
    Bonjour,

    Je suis débutant en 4D, j'ai 3 tables et je cherche à faire dans mon formulaire de saisie de la table1, une ListBox avec des données de la table2 qui est liée à la table1 au travers d'une table3. La liaison se fait par les ID des données des tables 1 et 2.

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Table1         Table3           Table2
    ID film <---- ID_Film         Capacité
    nom            ID_Salle ----> ID_Salle
    etc              date              etc


    Lorsque j'ai deux tables, j'utilise "LIEN RETOUR" mais ici ?

  2. #2
    Membre régulier
    Bonjour,

    Imaginons que vous ayez une listBox comportant 3 colonnes: BoxSalle, BoxCapacite, BoxDate.
    Vous pourriez utiliser un code qui ressemblerait à ceci:

    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
    21
    22
    23
    24
     
    C_ENTIER($cpt1;$cpt2)
    TABLEAU ENTIER(BoxSalle;0)
    TABLEAU ENTIER(BoxCapacite;0)
    TABLEAU DATE(BoxDate;0)
     
    CHERCHER([Table3];[Table3]ID_Film=[Table1]ID_Film)
     
    TABLEAU ENTIER(tabIDSalle;Enregistrements trouves([Table3]))
    TABLEAU DATE(tabDate;Enregistrements trouves([Table3]))
     
    Boucle ($cpt1;1;Enregistrements trouves([Table3]))
        tabIDSalle{$cpt1}:=[Table3]ID_Salle
        tabDate{$cpt1}:=[Table3]date
        ENREGISTREMENT SUIVANT([Table3])
    Fin de boucle 
     
    Boucle ($cpt2;1;Taille tableau(tabIDSalle))
        CHERCHER([Table2];[Table2]ID_Salle=tabIDSalle{$cpt2})
        INSERER LIGNE LISTBOX(ListBox1;$cpt2)
        BoxSalle{$cpt2}:=[Table2]ID_Salle
        BoxCapacite{$cpt2}:=[Table2]Capacité
        BoxDate{$cpt2}:=tabDate{$cpt2}
    Fin de boucle

  3. #3
    Membre à l'essai
    Merci, ça fonctionne.

###raw>template_hook.ano_emploi###