--
Has recibido este mensaje porque estás suscrito al grupo "Visual Foxpro Latinoamérica" de Grupos de Google.
Visita este grupo en http://groups.google.com/group/vfplatino.
El LOCATE esta pensado mas que nada para buscar todas las ocurrencias que cumplen la condición dada, la primera se ubica con el LOCATE y las otras con CONTINUE.
E indefectiblemente lo debo usar si no tengo índice disponible.
El SEEK es para una búsqueda puntual o con un SET NEAR ON (e índice activo) ubicarse cerca del punto donde esta lo mas parecido a lo requerido y luego en bucle barre el resto.
No me gusta (en lo personal) usar WHILE (no debo olvidar el skip ni saltear lo saltando a la siguiente vuelta) y uso un SEEK con un SCAN REST FOR...
Eso implica menor cantidad de lineas de código (mi regla KISS) básica.
Igualmente, el LOCATE/CONTINUE implican poner una sentencia en cada punto para determinar si encontré o no lo requerido.
Con un WHILE tengo que poner un SKIP o CONTINUE, preguntar por fin de datos, lo que no necesito con SCAN.
En un LOCATE tengo que escribir código para ubicar el área o activar indice (y resguardar y recuperar al terminar, índice y área anterior) lo que no requiero con SEEK.
En fin son comandos para circunstancias diferentes.
Como dice el dicho, zapatero a tus zapatos.
Saludos: Miguel, La Pampa (RA)
En el ejemplo que paso frenando, no se ve el uso de indice., a lo mejor en la prueba que hizo en la casa si.
En la prueba de sql, no se ve si des activo los índices. por lo que de no hacerlo, perjudicó la prueba.
Igual sirve como base.
A mi no me preocupan tanto los tiempos si no la simplicidad y portabilidad del código.
Saludos: Miguel, La Pampa (RA)