OVH Cloud OVH Cloud

clef externe composée

4 réponses
Avatar
lectriceNews
Bonjour,

Dans bd de produits j'ai entre autres les deux tables suivantes

1° T_définition des produits : caractéristiques immuables avec un
ID_produit

2° T_Historique des produits : caractéristiques variables (= toujours les
mêmes caractéristiques qui prennent des valeurs différentes par période) : à
une date donnée un produit ne sait avoir qu'un seul ensemble de
caractéristiques.
Donc clef primaire composée : ID_produit + date

Ma question : comment référencer une clef composée dans une liste déroulante
puisque je dois sauver les deux valeurs et que dans les listes déroulantes
il n'y a qu'une colonne liée ?


Grand merci
--
-------------------------
LectriceNews
A tous merci. Que d'infos, ce sont de vrais trésors
------------------------

4 réponses

Avatar
ze_titi
Bonjour,

ne serait-il pas plus simple d'avoir, dans ta table T_Historique des
produits une seule clé primaire pour chaque couple Id_Produit;Date ?
idHProduit id_produit Date

--
Cordialement,

ze_titi



Bonjour,

Dans bd de produits j'ai entre autres les deux tables suivantes

1° T_définition des produits : caractéristiques immuables avec un
ID_produit

2° T_Historique des produits : caractéristiques variables (= toujours les
mêmes caractéristiques qui prennent des valeurs différentes par période) : à
une date donnée un produit ne sait avoir qu'un seul ensemble de
caractéristiques.
Donc clef primaire composée : ID_produit + date

Ma question : comment référencer une clef composée dans une liste déroulante
puisque je dois sauver les deux valeurs et que dans les listes déroulantes
il n'y a qu'une colonne liée ?


Grand merci
--
-------------------------
LectriceNews
A tous merci. Que d'infos, ce sont de vrais trésors
------------------------




Avatar
lectriceNews
Bonjour ze_titi,

c'est comme ça que j'ai travaillé jusqu'à présent.

C'était assez simple mais, ça ne résoud pas ce problème qui m'intrigue
depuis longtemps.

Tous commentaires sont bienvenus. Merci.

--
-------------------------
LectriceNews
A tous merci. Que d'infos, ce sont de vrais trésors
------------------------

ze_titi wrote:
Bonjour,

ne serait-il pas plus simple d'avoir, dans ta table T_Historique des
produits une seule clé primaire pour chaque couple Id_Produit;Date ?
idHProduit id_produit Date





Bonjour,

Dans bd de produits j'ai entre autres les deux tables suivantes

1° T_définition des produits : caractéristiques immuables avec un
ID_produit

2° T_Historique des produits : caractéristiques variables ( >> toujours les mêmes caractéristiques qui prennent des valeurs
différentes par période) : à une date donnée un produit ne sait
avoir qu'un seul ensemble de caractéristiques.
Donc clef primaire composée : ID_produit + date

Ma question : comment référencer une clef composée dans une liste
déroulante puisque je dois sauver les deux valeurs et que dans les
listes déroulantes il n'y a qu'une colonne liée ?


Grand merci
--
-------------------------
LectriceNews
A tous merci. Que d'infos, ce sont de vrais trésors
------------------------




Avatar
Gafish
lectriceNews wrote:
Bonjour,


Bonjour,

Donc clef primaire composée : ID_produit + date

Ma question : comment référencer une clef composée dans une liste
déroulante puisque je dois sauver les deux valeurs et que dans les
listes déroulantes il n'y a qu'une colonne liée ?


Tu peux mettre ta date dans une deuxième colonne, et récupérer ta valeur
avec Column.
Par exemple : Me.TaListe.Column(1)
te renverra le contenu de la deuxième colonne pour la ligne selectionnée.
C'est clair que ce n'est pas aussi simple qu'avec une colonne liée où tout
se fait tout seul, mais tu peux y arriver.

Arnaud
--
Charte du forum : http://users.skynet.be/mpfa/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
lectriceNews
Bonjour,

Gafish wrote:

lectriceNews wrote:
Bonjour,


Bonjour,

Donc clef primaire composée : ID_produit + date

Ma question : comment référencer une clef composée dans une liste
déroulante puisque je dois sauver les deux valeurs et que dans les
listes déroulantes il n'y a qu'une colonne liée ?


Tu peux mettre ta date dans une deuxième colonne, et récupérer ta
valeur avec Column.
Par exemple : Me.TaListe.Column(1)
te renverra le contenu de la deuxième colonne pour la ligne
selectionnée. C'est clair que ce n'est pas aussi simple qu'avec une
colonne liée où tout se fait tout seul, mais tu peux y arriver.

Arnaud



C'est ce que j'ai déjà essayé de faire. C'est OK sans problème pour
récupérr la valeur.

Mais, comme j'ai un problème - que je suis en train d'examiner - pour
ajouter un enregistrement dans mon sous-formulaire j'envisage différentes
causes possibles et celle-ci m'en semblait-une.

Merci de la réponse si rapide.
--
-------------------------
LectriceNews
A tous merci. Que d'infos, ce sont de vrais trésors
------------------------