Je veux qu'on appuyant sur le bouton "Annuler", les anciennes valeurs s'affichent au lieu des nouvelles (annulation d'une modification d'un fournisseur). Comment faire?








Je veux qu'on appuyant sur le bouton "Annuler", les anciennes valeurs s'affichent au lieu des nouvelles (annulation d'une modification d'un fournisseur). Comment faire?
slt c'est un peu brouillon ta question mais il faut qu tu creer des variable ou tu recupere l'ancienne valeur pour pouvoir les reaffiche
Il manque quelques éléments dans ton message...
Bonjour,
J'essaie de faire <description du but de l'application>.
Voici un bout de code qui fonctionne mal:
<code>
Pourriez-vous m'aider?
Merci d'avance.








J'ai utilisé les paramètres comme vous me l'avez conseillé sauf que j'ai ce msg d'erreur qui apparaît : "Un OledbParameter avec ParameterName '@numf' n'est pas contenu dans ce OledbParameterCollection". Ce message d'erreur apparaît au niveau de la ligne de code suivante : "Txtnumfrs.Text = cmd.Parameters ("@numf").Value".
Voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 Private Sub Btnannuler_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btnannuler.Click Dim cnx As New OleDbConnection Dim cmd = New OleDbCommand("Select * from Fournisseur where Nom_frs='" & Cbxnomfrs.Text & "'", cnx) cnx.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =C:\Documents and Settings\Administrateur.STANDARD\Mes documents\Projet Budget\Budget\Budget\Marches.mdb" cnx.Open() cmd.connection = cnx cmd.executenonquery() Btnannuler.Enabled = False Btnvalider.Enabled = False Btnediter.Enabled = True annulation = True Txtnumfrs.Enabled = False Txtnumfrs.ReadOnly = True Txtnumfrs.Text = cmd.parameters("@numf").value Txtnomfrs.Enabled = False Txtnomfrs.ReadOnly = True Txtnomfrs.Text = cmd.parameters("@nomfrs").value Txtadr.Enabled = False Txtadr.ReadOnly = True Txtadr.Text = cmd.parameters("@adr").value Txttel.Enabled = False Txttel.ReadOnly = True Txttel.Text = cmd.parameters("@tel").value Txtfax.Enabled = False Txtfax.ReadOnly = True Txtfax.Text = cmd.parameters("@fax").value Txtemail.Enabled = False Txtemail.ReadOnly = True Txtemail.Text = cmd.parameters("@email").value annulation = False End Sub
Bon... Il y a du boulot...
Premièrement, les paramètres SQL servent à éviter de faire ce genre de choses :
A la place ça permet d'écrire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part "Select * from Fournisseur where Nom_frs='" & Cbxnomfrs.Text & "'"
Ensuite tu déclares un OleDbParameter que tu initialises avec comme ParameterName "@NOM_FOURNISSEUR" et comme valeur Cbxnomfrs.Text.
Code : Sélectionner tout - Visualiser dans une fenêtre à part "Select * from Fournisseur where Nom_frs=@NOM_FOURNISSEUR"
Deuxièmement, pour ce qui est de ton problème, si tu veux récupérer les valeurs renvoyées par le "select *", il faut que tu utilises un DataReader (retourné par ExecuteReader).
Ton approche avec les paramètres ne fonctionnera jamais.
Je t'invite à te documenter sérieusement sur les paramètres SQL et la récupération des données avec des DataReader. Les tutoriels et FAQ de developper.net vont t'aider, alors s'il te plait, lis les.
Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.
Bonnes pratiques pour les accès aux données
Débogage efficace en .NET
LINQ to Objects : l'envers du décor
Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter








Comment initialiser un oledbparameter avec le parametername et la valeur cbxnomfrs.text ?
Ce tuto est pour les SqlParameter, mais c'est pareil pour les OleDbParameter.
http://webman.developpez.com/article.../sqlparameter/
Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.
Bonnes pratiques pour les accès aux données
Débogage efficace en .NET
LINQ to Objects : l'envers du décor
Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter
Partager