Visual Basic - Rutina de Captura de errores

Life is soft - evento anual de software empresarial
 
Vista:

Rutina de Captura de errores

Publicado por Lobo (29 intervenciones) el 07/03/2005 03:27:20
Hola amigos., Estoy haciendo un programa de altas,bajas y cambios en una base de datos acces con ADO en la tabla Empleados y mi pregunta es la siguiente: En mi rutina de consultas pregunto por el número de empleados y procedo a buscarlo con el comando SELECT y es aquí en donde quiero capturar el error " Registro no encontrado", para que en base a este error valide si le debo mostrar al usuario un mensaje o le muestro el contenido de registro consultado.¿ Cual es la instrucción para capturar ese error? Gracias por su atención.Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Rutina de Captura de errores

Publicado por Ayudante (349 intervenciones) el 07/03/2005 04:32:18
Para capturar un error debes anteponer la instrucción

on error resume next, o sino, on error goto Etiqueta

si usas resume next basta con que valides en la siguiente línea de donde puede dar el error, si fue o no un error:

on error resume next
..........
if err.number <> 0 then
msgbox "Hubo un error"
else
msgbox "No hubo error"
end if

/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/

La otra opción es usar etiquetas:
on error goto etiqueta
....................
msgbox "Hubo un error"
exit [sub]|[function]
Etiqueta:
msgbox "Hubo un error"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Rutina de Captura de errores

Publicado por EGV (385 intervenciones) el 07/03/2005 13:30:31
Hola amigo
Si bajas el programa Examen de codigos fuente de VB , en el modulo bas del mismo vas a encontrar una rutina de captura de errores que las va grabando en un archivo Error.log para despues poder analizarlas.
En el modulo bas busca el procedimiento MostrarError y ese mismo lo puedes enganchar en tu codigo, lo llamas asi cuando se produce el error, mira como esta llamado en ese codigo desde otras partes y te daras cuenta.
Bueno espero que te sirva
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Rutina de Captura de errores

Publicado por Matías Freire (421 intervenciones) el 07/03/2005 14:57:53
Me parece que vos querés saber si tenés o no registros en el Recordset donde tenés hecha la consulta. Esto se puede hacer consultando las propiedades BOF (Begin Of File) y EOF (End Of File) del Recordset. Ejemplo con DAO:

Dim db as DAO.Database
Dim rs as DAO.Recordset
Dim SQL as String

Set db = DAO.OpenDatabase (App.Path & "\MiBase.mdb")
SQL="SELECT * FROM Clientes WHERE Codigo > 0 AND Codigo < 100"
Set rs = DAO.OpenRecordset (SQL, dbOpenDynaset)

If rs.BOF AND rs.EOF Then
' Acá va el código para cuando no tenés registros

' Si BOF es Verdadero, está al inicio del Recordset y si EOF es
' Verdadero, está al final del Recordset. Por lo tanto NO tenés
' registros.

Else
' Acá va el código para cuando SI tenés registros
End If

Espero que te haya servido, y que sea lo que estabas buscando

Saudos!!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar