Tengo una aplicacion que accede a un SQLserver y quiero controlar posibles desconexiones con el servidor para esto cree un procedimiento donde unicamente de este lugar hago la unica operacion con la base de datos (INSERT INTO). De esta manera si hay error sera en este procedimiento y puedo controlarlo.
Les muestro como escribi el procedimiento y queria saber si les parece bien o si algo tendria que mejorar, o si alguno lo resolvio de otra manera.
Me aseguro que la cadena enviada al procedimiento no contenga errores
Supongo que el unico error es por una desconexion con el servidor.
Private Sub InsertData(cadena As String)
On Error Resume Next
Do
conn.Execute cadena 'Unico lugar del programa que ejecuta insert into
If Err.Description = "" Then Exit Do 'Si no hubo error salgo del bucle
Open LOGERROR For Append As #1 'abro archivo de log de errores.
Print #1, Err.Number & " " & Err.Description
Print #1, cadena
Close #1
If MsgBox("Error al insertar datos. ¿Intentar reconexión? ", _
vbCritical + vbRetryCancel, _
"Error de conexión") = vbCancel Then End
conn.Close
Set conn = Nothing
Set conn = New ADODB.Connection
conn.Open UdlString, , "osado"
Err.Clear
Loop While True
End Sub
Les agradeceria criticas a este procedimiento.