Msflexgrid

Bonjour,
j'ai un problème vb6, j'ai une grille msflexgrid qui reçoit les données provenant des textbox
quand la première ligne s'insère dans la grille , je sauvegarde dans ma bd sans sans souci a l'aide d'un bouton.
et quand le 2e ligne s'insère dans la grille, au moment de sauvegarder , c'est toujours la première ligne qui est encore sauvegardée.
quelqu'un peut il m'aider? SVP

mervi d'avance

5 réponses

  1. Contributeur
    Bonjour,
    Quel est le code que tu a dans le bouton de sauvegarde ?
    Sans ça, difficile de t'aider.
    A+
    0
    1. voici le code du bouton enregistrerCall conneCt
      Dim rsligne As New ADODB.Recordset
      rsligne.Open "[ligne]", Db, adOpenKeyset, adLockOptimistic
      rsligne.AddNew
      rsligne.Fields("codearticle") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 0)
      rsligne.Fields("nomarticle") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 1)
      rsligne.Fields("stock") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 2) - Msflexgrid1.TextMatrix(Msflexgrid1.Row, 3)
      rsligne.Fields("qtesortie") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 3)
      rsligne.Fields("PU") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 4)
      rsligne.Fields("PT") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 5)
      rsligne.Update
      rsligne.Close
      Call deconnect
      0
      1. voici le code du bouton enregistrer

        Call conneCt

        Dim rsligne As New ADODB.Recordset
        rsligne.Open "[ligne]", Db, adOpenKeyset, adLockOptimistic
        rsligne.AddNew
        rsligne.Fields("codearticle") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 0)
        rsligne.Fields("nomarticle") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 1)
        rsligne.Fields("stock") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 2) - Msflexgrid1.TextMatrix(Msflexgrid1.Row, 3)
        rsligne.Fields("qtesortie") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 3)
        rsligne.Fields("PU") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 4)
        rsligne.Fields("PT") = Msflexgrid1.TextMatrix(Msflexgrid1.Row, 5)
        rsligne.Update
        rsligne.Close
        'Call deconnect
        0
        1. Contributeur
          Normal, tu ne détermine pas la ligne...
          Dim NumLig as integer 
              NumLig = 1 'les lignes commence à zéro
              rsligne.Fields("codearticle") = Msflexgrid1.TextMatrix(NumLig , 0)

          Idem pour les autres
          A+

          Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
          Note: Je ne répond pas aux MP pour les questions techniques. Et ma boule de cristal est cassée .
          0
          1. Merci Lermite222
            je vais essayer et je te tiens informer
            0