Gestion erreur reseau ou dique

fahdboujadi Messages postés 20 Date d'inscription lundi 15 novembre 2004 Statut Membre Dernière intervention 2 mai 2005 - 22 mars 2005 à 01:25
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 - 22 mars 2005 à 15:21
Bonjour tt le monde .
voila sur une question que jé deja posé sur le form "comment gérer une erreur reseau" j'ai recu une reponse bien favorable. Merci. Mais la un problème ce pose avec cette gestion de reseau:

loaderror:
Select Case Err.Number
Case 3043, 3024, 3044
If Not ReessaiFait Then
If MsgBox(Err.Description & vbCrLf & "Problème de connexion:" & vbCrLf & "Assurez-vous que vous êtes connecté(e) à la base de données", vbYesNo, "Erreur") = vbRetry Then
ReessaiFait = True
Resume restor1
End If
End If
End Select

ce loaderror marche bien quand j'ai un message du genre : " base de donnée introuvable......."
mais une fois j'ai l'erreur " erreur reseau ou erreur disque" je recoi bien le message et le programme revient a l'etiquette restor1. mais a chaque fois je suis a la meme errreur alors il fo que je sort du progrmme et tt devient normal jusqu'a que je retrouve cette erreur pour tombé encore une fois dans la boucle d'ou je sort jamais avant d'arreté le programme.
voila un exemple ou je trouve bcp cette erreur et merci de bien vouloir le resoudre :

( a propos ma base de donné ce trouve dans un autre poste et il est relié a mon programme par le ODBC )
Private Sub Command5_Click()
restor6:
On Error GoTo loaderror
Set work = DBEngine.Workspaces(0)
Set bd = work.OpenDatabase("I:\hop_bd.mdb")
Set rst3 = bd.OpenRecordset("victime")
Set rst4 = bd.OpenRecordset("accident")
Set rst5 = bd.OpenRecordset("dossier")
.
.
.
etc..
loaderror:
Select Case Err.Number
Case 3043, 3024, 3044
If Not ReessaiFait Then
If MsgBox(Err.Description & vbCrLf & "Problème de connexion:" & vbCrLf & "Assurez-vous que vous êtes connecté(e) à la base de données", vbYesNo, "Erreur") = vbRetry Then
ReessaiFait = True
Resume restor1
End If
End If
End Select
end sub

2 réponses

Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
22 mars 2005 à 01:54
pas tout compris, mais ce qui me gêne c'est le Resume restor1 avec toujours la même étiquette quelque soit l'erreur.
faudrait peut être changer le nom de l'étiquette en fonction de l'erreur.
ou tout simplement un Resume tout simple sans rien derrière et le programme repartira sur la ligne qui a provoqué l'erreur.

Daniel
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
22 mars 2005 à 15:21
pas tout compris non plus mais peut-être aussi qu'un petit exit sub avant l'étiquette loaderror: éviterait de passer dans le traitement d'erreur quand il n'y en a pas.

Loup Gris
0
Rejoignez-nous