Pb de mise a jour

Résolu
djamal_dine Messages postés 16 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 4 avril 2009 - 22 nov. 2007 à 01:10
djamal_dine Messages postés 16 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 4 avril 2009 - 22 nov. 2007 à 17:59
Bonsoir a tous,
je suis novice en vb 2005 et mon probleme est le suivant je developpe une application de gestion de stock et j'ai une erreur au niveau de la mise a jour de ma table PRODUIT lorsque je saisi une nouvelle COMMANDE.Le code que j'utilise est place dans mon bouton VALIDER et est comme suit:
  'creation d'une nouvelle ligne avec les données des textbox
        dtr = dts.Tables("Produit_cmd").NewRow
        dtr("PRO_num") = Me.PC_num.SelectedValue
        dtr("FRS_num") = Me.PC_frsCB.SelectedValue
        dtr("PCMD_date") = Me.PCMD_dateDTP.Value
        dtr("PCMD_qtecmd") = Me.PC_qteTxt.Text

        'ajout de la ligne dans le DataSet
        dts.Tables("Produit_cmd").Rows.Add(dtr)

        'création et exécution du commandbuilder
        'pour mettre à jour le DataAdapter
        cmdb = New OleDb.OleDbCommandBuilder(dta)

        'mise à jour des données du DataAdapter
        'à partir du commandbuilder
        dta.Update(dts, "Produit_cmd")

        'on vide le dataset pour le recréer avec
        'les nouvelles données
        dts.Clear()
        dta.Fill(dts, "Produit_cmd")
        dtt = dts.Tables("Produit_cmd")

        'mise à jour de la datagrid

        PCDGV.DataSource = dts.Tables("Produit_cmd")

        'aller au début du fichier
        rownum = 0

        'affichage des données dans les texbox
        Me.PC_num.Text = dtt.Rows(rownum).Item("PRO_num")
        Me.PC_frsCB.Text = dtt.Rows(rownum).Item("FRS_num")
        Me.PCMD_dateDTP.Text = dtt.Rows(rownum).Item("PCMD_date")
        Me.PC_qteTxt.Text = dtt.Rows(rownum).Item("PCMD_qtecmd")

     
        sql2 = "update produit SET PRO_qteinit=PRO_qteinit " & PC_qteTxt.Text & "  where PRO_desig = '" & PC_num.SelectedText & "'"
        Try
            cnx.Open()
            Dim up As New OleDb.OleDbCommand(sql2, cnx)
            up.ExecuteNonQuery()
            cnx.Close()
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
        cnx.Close()

A l'execution, il y a aucune mise a jour lorsque je clique sur mon bouton valider.
Merci de bien vouloir m'aider.

4 réponses

djamal_dine Messages postés 16 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 4 avril 2009
22 nov. 2007 à 17:59
Oui c'etait une partie de mon probleme mais j'ai pu corriger l'autre probleme il s'agissait de l'ouverture et de la fermeture de ma base
Merci encore.
       sql2 = "update produit SET
PRO_qteinit=PRO_qteinit + " & PC_qteTxt.Text & "  where PRO_desig
= '" & PC_num.SelectedText & "'"
        Try
           <strike> cnx.Open()</strike>
            Dim up As New OleDb.OleDbCommand(sql2, cnx)
            up.ExecuteNonQuery()
            <strike>cnx.Close()</strike>
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
        cnx.Close()
3
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
22 nov. 2007 à 13:38
Salut,

Essaye ta requête comme cela :

sql2 = "update produit SET PRO_qteinit= '" & PC_qteTxt.Text & "' where PRO_desig = '" & PC_num.SelectedText & "'"

En partant du principe que PC_num.SelectedText est bien un type String et non, Integer ou long ou double...enfin tu as compris....

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
djamal_dine Messages postés 16 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 4 avril 2009
22 nov. 2007 à 16:44
Merci beaucoup pour ta reponse
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
22 nov. 2007 à 16:48
Salut,

Ok, mais, c'était bien le problème ou pas ?

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
Rejoignez-nous