El Guru Programador
Usuario DESCONOCIDO | Registrate Gratis | Usuarios Registrados
Foro de Visual Basic/VB.NET
Foros del Guru > Visual Basic/VB.NET
Usuario Subrutina comparar_cedula
Desconocido
Enviado - 12/12/2002
 
Hice ésta subrutina para comparar la cédula que introduzco por teclado y la que tengo en la bd. Si son iguales me retorna un mensaje de error, pero tengo un error de ejecución, que dice:
EL INDICE O LA CLAVE PRINCIPAL NO PUEDE CONTENER UN VALOR NULL y se ubica en datos.MoveFirst y en datos.MoveNext.

Entra en el WHILE pero no toma en cuenta el IF ???

Les agradezco mucho su ayuda, saludo a todos!!!

Sub comparar_cedula()
datos.MoveFirst
Do While Not datos.EOF
If cedula.Text = datos.Fields("cedula") Then
MsgBox "Ésta cédula ya existe en la Base de Datos. Inténtelo de nuevo con otra cédula.", vbCritical, "ERROR"
blanquear
btnincluir.Enabled = False
btnmodificar.Enabled = False
btneliminar.Enabled = False
btnbuscar.Enabled = False
btnaceptar.Enabled = True
btncancelar.Enabled = True
btnsalir.Enabled = False
nombre.Enabled = True
cedula.Enabled = True
ciudad.Enabled = True
nombre.SetFocus
Exit Do
Else
datos.MoveNext
End If
Loop
End Sub
 
Desconocido
Enviado - 29/3/2003
 
Hola que tal , bien primero tienes que decirle que es lo que debe buscar y en donde para que asi pueda enviarte las rutinas del msgbox.

ejm.

cab_buscar = "cedula like'" & txtbuscar & "*'"
Data2.Recordset.FindFirst cab_buscar

If Data2.Recordset.NoMatch Then

MsgBox "No se ha encontrado en la Base de Datos, Introduzca nueva Busqueda.", vbaceptar, "No encontrado"
vbaceptar = 13
txtbuscar.SetFocus
txtbuscar.Text = ""
Else
'la rutina que hayas especificado.
End If
End Sub

en mi caso este es unas forma que yo utilizaria..

espero te solucione algunas dudas.. Att. Birkoff

NOTA: cab_buscar es una variable mia,..puedes colocar lo que quieras..a,b, juan ,..lo que sea..bye
 
 

 

Contactos myStudio Network