bonjour:
J'ai une base de donné contenant trois tables , Facture, Produit et FactProd
alors, mon annalyse est comme suit:

une facture peut comprendre 1-n produits et chaque produit peut repeter dans 1-n factures, donc , j'ai cree une table intermediaire entre facture et produit : la table fact prod qui contient les champs (N_factprod, N_facture, N_produit)

Mon application contient deux combobox , le premier charge les N_facture, le deuxieme les N_Produits, je veux que l'utilisateur choisit un N_facture et un N_produit et ajouter un enregistrement dans factprod,

mon code qui fait cette tache est:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
dr2 = ds.Tables("Factprod").NewRow()
        dr2(1) = Val(FACTURE.Text)
        dr2(2) = Val(matpack.Text)
        ds.Tables("Factprod").Rows.Add(dr2)
        dap = New OleDbDataAdapter(cmd)
        db = New OleDbCommandBuilder(dap)
        dap.Update(ds, "Factprod")
        MsgBox("Pack ajouté avec succes!")
FACTURE et matpack sont les noms des deux combobox
remarques: si je remplace le nom Factprod par produit ou facture ca pose pas de probleme , sachant que le nom de la table Factprod est correct
le message d'erreur envoyé pour la premiere ligne est :
La référence d'objet n'est pas définie à une instance d'un objet.
sachant que j'ai cree les relation 1-n entre facture et factprod; 1-n entre produit et factprod

Et merci d'avance