FoxPro/Visual FoxPro - locate

 
Vista:

locate

Publicado por fernando (107 intervenciones) el 31/12/2004 00:10:17

por que no me busca

select tabla
go top
locate for id=5 and nombre=="Fernando"
if found()
wait window 'Si esta'
else
wait window 'No esta'
endif

el registro si existe pero me dice que no esta

por que??gracias
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:locate

Publicado por Roman Suazo (2723 intervenciones) el 31/12/2004 01:01:41
Ejecuta el REINDEX para reconstruir los indices, si sigue fallando borralos y vuelve a crearlos...Nos cuentas por el foro como salio el asunto despues de hacer lo que te mencione...
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:locate

Publicado por Plinio (7841 intervenciones) el 31/12/2004 04:09:43
El manejo de caracteres a veces se complica. Yo lo haria asi:

select tabla
go top
SET EXACT ON
LOCATE FOR id=5 and ALLTRIM(UPPER(nombre))=="FERNANDO"
if found()
wait window 'Si esta'
else
wait window 'No esta'
endif
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:locate

Publicado por gracias a los dos por la respu (107 intervenciones) el 01/01/2005 02:21:05


bien de antemano gracias a los dos creo que si funciona de las dos maneras pero me quedo con la de plinio por que la respuesta de roman creo saber que solo es para cuando se ocupa indices y yo no ocupo indices y si no es asi me gustaria saberlo detodas maneras gracias voy a checarlo y feliz año a todos los foxeros
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:locate

Publicado por Roman Suazo (2723 intervenciones) el 01/01/2005 07:20:57
Si usas indices las busquedas seran mas rapidas. Si la tabla no tiene muchos registros entonces no notarias la diferencias. Los procesos que te di no se deben ejecutar cada vez que busques sino eran mas bien para reparar algun daño en los indices . La solucion que te da Plinio seria muy lenta si llegaras a tener una tabla con muchos registros en ese caso los indices no te ayudarian, el alltrim no se recomienda en expresiones de indices ya que es muy lento...
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