Erreur systeme incompréhensible

gargourifahmi Messages postés 31 Date d'inscription dimanche 23 juillet 2006 Statut Membre Dernière intervention 3 décembre 2008 - 19 nov. 2006 à 23:48
asecher Messages postés 262 Date d'inscription lundi 20 octobre 2003 Statut Membre Dernière intervention 27 avril 2007 - 27 avril 2007 à 20:31
Cette procedure d'un bouton d'ajout genere une erreur systeme lorsque j'appuie
sur le bouton "ajouter" et l'execution s'arrete au niveau de la commande Update.
Est ce quelqu'un peut m'aider à trouver la solution de ce probleme.

Private Sub btnenr_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnenr.Click
cnx.Open()
sql = "select * from test"
cmd = New SqlCommand(sql)
dta = New SqlDataAdapter(cmd)
cmd.Connection() = cnx
'si un champ n'est pas rempli fin de procédure
If Me.txtnom.Text = "" Or _
Me.txtprenom.Text = "" Or _
Me.txtjob.Text = "" Then

MessageBox.Show("Vous devez remplir tous les champs !", "Erreur...", MessageBoxButtons.OK, MessageBoxIcon.Error)

Me.txtnom.Focus()

Exit Sub

End If
dta.InsertCommand = New SqlCommand("insert into test(reference,nom,prenom,emploi) Values (@reference,@nom,@prenom,@emploi",cnx)
dta.InsertCommand.Parameters.Add("@reference", SqlDbType.Decimal, 9, "reference")
dta.InsertCommand.Parameters.Add("@nom", SqlDbType.Text, 16, "nom")
dta.InsertCommand.Parameters.Add("@prenom", SqlDbType.Text, 16, "prenom")
dta.InsertCommand.Parameters.Add("@emploi", SqlDbType.Text, 16, "emploi")
'crلtion d'une nouvelle ligne avec les données des textbox

dtr = dts.Tables("test").NewRow()
dtr("nom") = Me.txtnom.Text
dtr("prenom") = Me.txtprenom.Text
dtr("emploi") = Me.txtjob.Text

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

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


'mise à jour des données du DataAdapter
'à partir du commandbuilder

*********************************
dta.Update(dts, "test")
*********************************

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

'mise à jour de la datagrid
DataGrid1.SetDataBinding(dts, "test")


'aller au début du fichier
rownum = 0

'affichage des données dans les texbox
Me.txtref.Text = dtt.Rows(rownum).Item("reference")
Me.txtnom.Text = dtt.Rows(rownum).Item("nom")
Me.txtprenom.Text = dtt.Rows(rownum).Item("prenom")
Me.txtjob.Text = dtt.Rows(rownum).Item("emploi")

'activation des boutons
btnp.Enabled = True 'premier
btnprec.Enabled = True 'précédent
btnsui.Enabled = True 'suivant
btnder.Enabled = True 'dernier

btnmod.Enabled = True
btnsup.Enabled = True

btnajou.Enabled = True
btnenr.Enabled = False 'valider

btnajou.Text = "Ajouter"

cnx.Close()


End Sub

1 réponse

asecher Messages postés 262 Date d'inscription lundi 20 octobre 2003 Statut Membre Dernière intervention 27 avril 2007 1
27 avril 2007 à 20:31
tu travaille sur dta ou sur dtr ?
(le .net, ça me donne des boutons ...)

Alain 31
0
Rejoignez-nous