Récupérer lignes datagridview

sistaroro -  
Scalpweb Messages postés 1483 Statut Membre -
Bonjour,
j'ai un petit souci. Voila mon problème: j'ai un datagridview ou il y a des données. Et en fait je veux insérer une partie de ces données dans une table.
Pour cela je le fait avec une boucle mais seulement la première ligne du datagridview est insérée dans la base de données. Voici le code. Merci d'avance.





Public Sub insertion_ligne_facturebdd(ByVal numero_facture AsInteger)



'Déclaration de la connexion à la base de données'
Dim MaConnexion As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=librairie.mdb")


Dim Macommande As OleDbCommand = MaConnexion.CreateCommand()

Dim i AsInteger

Dim j AsInteger

j = ajouter_facture.grille.Rows.Count

For i = 0 To i = j


'Conversion de la quantité en integer'
Dim quantite AsInteger

quantite = CType(ajouter_facture.grille(3, i).Value.ToString, Integer)


'Conversion du numéro du produit'
Dim num_produit AsInteger

num_produit = CType(ajouter_facture.grille(0, i).Value.ToString, Integer)



'Commande avec la requete d'insertion dans la table composer' Macommande.CommandText = "INSERT INTO composer(num_facture,num_produit,quantité_achetée) VALUES(" & numero_facture & "," & num_produit & "," & quantite & ") ;"

Dim MyDataAdapter AsNew OleDbDataAdapter(Macommande)

'On fait appel au dataAdapter puis on ouvre la connexion


MaConnexion.Open()


'on éxécute la commande
MyDataAdapter.UpdateCommand = Macommande

MyDataAdapter.UpdateCommand.ExecuteNonQuery()


Dim Macommande3 As OleDbCommand = MaConnexion.CreateCommand()

'Commande avec la requete pour retirer le stock dun produit'
Macommande3.CommandText = "UPDATE produit SET stock_actuel=(stock_actuel-" & quantite & ") WHERE num_produit=" & num_produit & ";"


Dim MyDataAdapter3 AsNew OleDbDataAdapter(Macommande3)

'On fait appel au dataAdapter puis on ouvre la connexion

'on éxécute la commande

MyDataAdapter3.UpdateCommand = Macommande3

MyDataAdapter.UpdateCommand.ExecuteNonQuery()



'et on ferme la connexion
MaConnexion.Close()

Next



End Sub

22 réponses

sistaroro
 
sa fonctionne. Il fallait mettre
j = ajouter_facture.grille.Rows.Count - 2 je ne sais pas pourquoi d'ailleurs.merci beaucoup en tout cas.
0
Scalpweb Messages postés 1483 Statut Membre 43
 
De rien, @+
0