Duda con IF Found() Visual Foxpro

La variable Found() no me funciona, quiero decir que cuando busca un numero que existe no me lo valida.
if empty(carreras.idcarrera)
Wait windows "no lo deje en blanco" TIMEOUT 2
THISFORMSET. FORM1. TXTIdcarrera. SETFOCUS
Endif
IF NOT EMPTY(carreras.idcarrera)
select 1
set order to tag IDCARRERA
go top
BUSCAR=STR(THISFORMSET.FORM1.TXTIdcarrera.value)
Seek BUSCAR
IF FOUND()
*SCATTER MEMVAR MEMO
*DISPLAY FIELDS IDCARRERA
*THISFORMSET.FORM1.refresh
*THISFORMSET.FORM1.MODIFICAR.ENABLED=.T.
*THISFORMSET.FORM1.eliminar.ENABLED=.T.
*Else
wait windows "CEDULA NO REGISTRADA" nowait
THISFORMSET.FORM1.GUARDAR.ENABLED=.T.
THISFORMSET.FORM1.MODIFICAR.ENABLED=.F.
THISFORMSET.FORM1.eliminar.ENABLED=.f.
ENDIF
Endif
Me pueden ayudar

1 respuesta

Respuesta
1
Fernando:
Seguramente es porque tienes mal definido el indice de la tabla CARRERAS.
Supone que tu tabla CARRERAS tiene la siguiente estructura:
IDCARRERA N(5)
CAMPO1 ...
CAMPO2 ...
CAMPO3 ...
CAMPO4 ...
CAMPO5 ...
ETC.
Deberás crear el indice de la siguiente forma:
STR(IDCARRERA, 5) (no te olvides de poner la 'coma' y el '5' porque es la parte más importante de la creación del indice)
Luego, para hacer la búsqueda:
BUSCAR=STR(THISFORMSET.FORM1.TXTIdcarrera.value,5)
Seek BUSCAR
Tiene que funcionar.
Saludos.
Fernando Alvarez
La Pampa - Argentina
Tengo un buen ejemplo para enviarte... pero necesito saber tu EMail.
Aprovecha para enviarme el formulario y la base de datos así veo porque no te funciona el SEEK ([email protected]).-
Hola,
Muchas Gracias por tu interés,
Mi email es [email protected] o bien a [email protected]
Gracias
Fernando
Listo.
Ya puedes puntuar la pregunta.
Seguiremos en contacto
Fernando

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas