S.o.s en listview svp

Fermé
sooprano Messages postés 33 Date d'inscription dimanche 9 décembre 2007 Statut Membre Dernière intervention 22 avril 2008 - 11 mars 2008 à 22:49
 bscorpion - 24 févr. 2009 à 12:08
bsr bon je travaille dans visual basic 6 et j'veux faire l'edition en listview voila j'explique mon probleme
j'ai un interface qui Porte un Combo et listview ce combo est chargé du N°produit (Nump_con) du table Concerner (clé etrangere ) et listview est chargé entete de N°Produit , Libellé Produit, Prix unitaire, Qantité et Montant

voila je travaille avec 3 table Produit , Commande table Concerner
table Produit contienne les champs suivant
Num_cde (N°produit) (indexé)
Lib_prod (Libellé)
Pu_prod (Prix u)
Qs_prod (Qt en stock)
table commande
Ncom_cde (N° Commande)
Date_cde
Numc_cde (N°client) (clé etrangere)

et table Concerner contienne 2clé etrangere
Numc_con (N° Commande) clé etra
Nump_com (N°Produit) clé etran
Qt_con (Quantité)
voila ce que j'ai fé en edition

Private Sub Form_Load()
Ouverture 'base de donnée

SQL = "select distinct Numc_con from Concerner"
Set E_sql = Base.OpenRecordset(SQL)
With E_sql 'chargement du combo1 par N°commande
If Not .EOF Then .MoveFirst
While Not .EOF
Combo1.AddItem !Numc_con
If Not .EOF Then .MoveNext
Wend
End With

'conception d'entete en listview
ListView1.ColumnHeaders.Add = "N° Produit"
ListView1.ColumnHeaders.Add = "Libellé"
ListView1.ColumnHeaders.Add = "Prix Unitaire"
ListView1.ColumnHeaders.Add = "Quantité En Stock"
ListView1.ColumnHeaders.Add = "Mt"
ListView1.View = 3

End Sub

Private Sub Combo1_Click()
SQL = " select Concerner.Nump_con, Produit.Lib_prod, Produit.Pu_prod, Concerner.Qt_con, " & _
" Mt from Produit Concerner where Produit.Num_prod=Concerner.Nump_con and " & _
" Concerner.Numc_con='" & Combo1 & "'"
Set E_sql = Base.OpenRecordset(SQL)
Mt = 0
With E_sql
If Not .EOF Then .MoveFirst
While Not .EOF
Mt = !Qt_con * !Pu_prod
Tm = Tm + Mt
Set l = ListView1.ListItems.Add(, , !Nump_con)
l.SubItems(1) = !Lib_prod
l.SubItems(2) = !Pu_prod
l.SubItems(3) = !Qt_con
l.suitems(4) = Mt
If Not .EOF Then .MoveNext
Wend
End With
Label5 = Tm 'Total Moantant
Label6 = Tm * 0.2 'Montant TVA
Label7 = Tm + Val(Label6) 'Montant TTC

End Sub

bon apres l execution et quand j'clique sur combo il me sorte un debogage tro de parametre 7 attendu
erreur execution '3061'
svp pourrez vous m aider sur ca j veux cliquer sur combo il m'affiche les données ainsi quand j reclique je veux pa que les donnée qui ont été affiché au 1er clique reste j veux que l'affichage du donnée du 2eme clique ecrase la 1ere
voila

1 réponse

salut,
je sais pas si ca vous aide ou non car vu la date je crois que t'as trouvé la solution, mais je veux selement donnée une contribution pour les autres:
je crois que tu doit ajouter ca :
listview1.items.clear()
ListView1.BeginUpdate()
Set l = ListView1.ListItems.Add(, , !Nump_con)
...
ListView1.EndUpdate()
0