Gérer un message d?erreur

Résolu
nwwara Messages postés 22 Date d'inscription mercredi 14 février 2007 Statut Membre Dernière intervention 19 septembre 2007 - 13 mars 2007 à 11:25
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 - 20 mars 2007 à 21:50
Bonjour ;


Dans mon code VB.Net je fait l’appel d’une requête Sql de type Insert (L’ajout dans une Table), et je veux savoir comment gérer l’erreur : si l’utilisateur à ajouter un enregistrement avec un clé existe déjà  dans la Table, je veux afficher à l’utilisateur un message compréhensible.



Merci bien.

21 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
13 mars 2007 à 11:39
Salut,


Si tu as bien fait les choses, dans ta base tu as donc une clé primaire qui évite ainsi les doublons..C'est pour cela que ton post n'est pas trop explicite,car à chaque ajout d'enregistrement ta clé s'incrément de 1 !!
Veux-tu vérifier l'occurance de ta saisie par rapport à ta table ? Tu style si toto existe déjà dans ta base ?

Sinon dans ton formulaire, pour gérer une erreur voici un petit bout de code(VB6) mais adaptable en .net je pense

Dim NumeroErreur As Integer

On Error Goto DefinitionErreur
...
...
ici tout ton code
...

DefinitionErreur:
NumeroErreur = err.Number
If NumeroErreur > 0 then
   MsgBox err.Description
   ' Exit Sub
   ' Exit Function
End if

Ainsi tu aura la nature de l'erreur

A+
Exploreur



 Linux à un noyau, windows un pépin
3
hvb Messages postés 939 Date d'inscription vendredi 25 octobre 2002 Statut Membre Dernière intervention 27 janvier 2009 3
13 mars 2007 à 12:32
il ne faut plus utiliser de goto en .net, il y a des structures specialement faite pour gerer les erreur.
Utilise donc le couple Try/Catch

Try
' ton code ' ton code ' ton code
' ton code ' ton code ' ton code

Catch ex as exception
'traitement de l'erreur
msgbox ex.ToString

End Try

Hvb aka Batto
bato.ltd at gmail.com
3
hvb Messages postés 939 Date d'inscription vendredi 25 octobre 2002 Statut Membre Dernière intervention 27 janvier 2009 3
13 mars 2007 à 12:35
Il faut d'ailleur aussi eviter les msgbox, et preferer
MessageBox.Show("le message")

^^

Hvb aka Batto
bato.ltd at gmail.com
3
nwwara Messages postés 22 Date d'inscription mercredi 14 février 2007 Statut Membre Dernière intervention 19 septembre 2007
13 mars 2007 à 12:20
 
N.B: Ma clé primaire c'est la concaténation des deux champs qui  ne sont pas numérique.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nwwara Messages postés 22 Date d'inscription mercredi 14 février 2007 Statut Membre Dernière intervention 19 septembre 2007
13 mars 2007 à 12:41
Merci bcp
0
houston02 Messages postés 14 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 19 juillet 2007
18 mars 2007 à 08:18
salut !!

j'aimerais que quand la personne clique sur "ok" un message d'erreur s'affiche

merci
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
18 mars 2007 à 08:44
Ah ! ...
et qui dirait quoi de plus que le 1er ?
0
houston02 Messages postés 14 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 19 juillet 2007
18 mars 2007 à 08:46
ben j'ai pas compris comment faut faire ^^
0
houston02 Messages postés 14 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 19 juillet 2007
18 mars 2007 à 08:51
quand la personne clique sur le bouton "annuler" (par exemple")

un message d'erreur s'affiche

comme ça :

MsgBox(
"texte")

sauf que ce sois en message d'erreur
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
18 mars 2007 à 09:23
Ah...
Je crois qu'il s'agit là de tout autre chose...
Tu devrais ouvrir ta propre discussion et exposer clairement ta question.
La présente discussion traite quant à elle de la gestion des erreurs et de leur affichage.
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
19 mars 2007 à 08:43
Salut,

A placer dans l'évènement click de ton bouton Annuler
MessageBox.Show("Voulez-vous vraiment annuler ?")

A+
Exploreur

 
0
houston02 Messages postés 14 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 19 juillet 2007
19 mars 2007 à 10:03
salut exploreur

merci de ton code... mais c'est juste une boîte de dialogue de base... 
moi j'aimerais pareil  mais en message d'erreur

merci

@+
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
19 mars 2007 à 10:34
Salut,


Comme le dit Jmfmarques, il faudrait que tu sois un peu plus précis...
Car dans toute cette discussion, il y a du code pour gérer les erreurs, et du code pour afficher une boite de dialogue quand tu cliques sur un bouton !!!
Tu veux quoi exactement ? Car il ne faudrait pas faire pleins de post réponse inutilement !!!
Tu veux génerer une fausse erreur ?


A+
Exploreur


 
0
houston02 Messages postés 14 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 19 juillet 2007
19 mars 2007 à 10:54
ok je vais bien m'expliquez (excusez moi pour l'incomprehension)

lorsque la personne clique sur le bouton "boutton" (par exemple)

un message d'erreur se lance !

mais comme tu dit "génerer une fausse erreur"

merci ...

@+
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
19 mars 2007 à 11:47
Salut,


Et bien dans les post précédent tu as tout ce qui te faut...
Tu n'as qu'a utiliser la boite de dialogue standard et lui mettre l'icone que tu veux, en VB6 il y a :
VbCritical
VbInformation
VbExclamation
...
...

A toi maitenant de voir sous .Net lequel tu souhaites...Au pire tu peux créer une boite de dialogue personnelle via un nouveau formulaire.


A+
Exploreur


 
0
houston02 Messages postés 14 Date d'inscription samedi 13 mai 2006 Statut Membre Dernière intervention 19 juillet 2007
20 mars 2007 à 06:19
salut !!

non c'est bon j'ai trouver

MsgBox "vive sur-la-toile", vbCritical, "Erreur!"

merci quand même de votre aide

@+
0
hvb Messages postés 939 Date d'inscription vendredi 25 octobre 2002 Statut Membre Dernière intervention 27 janvier 2009 3
20 mars 2007 à 21:01
lol
"merci quand même de votre aide "
c'est exactement ce que exploreur t'as dit

Hvb aka Batto
bato.ltd at gmail.com
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
20 mars 2007 à 21:13
Laus non, hvb... mais non ...
dans le message d'Explireur, il n'yt avait pas exactement "vive sur-la-toile",  ni exactement"Erreur !"
Tu te rends compte ? (boutade, bien évidemment....) ...
Et dire qu'en plus, il a "squatté" pour cette "affaire-là"... GRANDIOSE !
0
hvb Messages postés 939 Date d'inscription vendredi 25 octobre 2002 Statut Membre Dernière intervention 27 janvier 2009 3
20 mars 2007 à 21:24
lol jmfmarques...
comme tu me relances je vais troller,
en .net on fera plutot :
MessageBox.Show(

"contenu message",
"titre", MessageBoxButtons.OK, MessageBoxIcon.Error)

plutotqu'un msgbox de vb6

Hvb aka Batto
bato.ltd at gmail.com
0
hvb Messages postés 939 Date d'inscription vendredi 25 octobre 2002 Statut Membre Dernière intervention 27 janvier 2009 3
20 mars 2007 à 21:26
space le saut de ligne...




MessageBox.Show("contenu message", "titre", MessageBoxButtons.OK, MessageBoxIcon.Error)





Hvb aka Batto
bato.ltd at gmail.com
0
Rejoignez-nous