Comando LOCATE
Busca el primer registro que coincida con el valor o la condición especificados, o va a un número de registro especificado.
Sintaxis
LOCATE {IF prueba <WHILE prueba> <FIRST rango|NEXT rango>|RECORD núm}
Parámetros
Nombre | Descripción |
---|---|
IF prueba |
El valor o la condición que se debe buscar. Debe encerrar los valores literales de caracteres entre comillas y los valores de fechahora entre comillas simples invertidas. |
WHILE prueba opcional |
Una expresión condicional que debe ser verdadera para procesar cada registro. El comando se ejecuta hasta que la condición se evalúa como falsa o hasta que se llega al final de la tabla. Nota Si usa WHILE junto con FIRST o NEXT, el procesamiento de registros se detiene al llegar a un límite. |
FIRST rango | NEXT rango opcional |
La cantidad de registros que se procesarán:
Utilice intervalo para especificar la cantidad de registros que se deben procesar. Si omite FIRST y NEXT, se procesan todos los registros de forma predeterminada. |
RECORD núm |
El número del registro para ubicar. |
Ejemplos
Ubicar el primer registro que coincida con un valor especificado
En los siguientes ejemplos, se muestra el uso de LOCATE para encontrar la primera instancia de un valor específico dentro de una tabla:
LOCATE IF Nombre_proveedor = "United Equipment"
LOCATE IF Nombre_proveedor = "Uni"
LOCATE IF Importe_factura > 1000
LOCATE IF Fecha_de_factura = `20141231`
Ubicar el primer registro que coincida con una condición o expresión específica
En los siguientes ejemplos, se muestra el uso de LOCATE para encontrar la primera instancia de una condición o una expresión específicas dentro de una tabla:
LOCATE IF Nombre_proveedor = "United Equipment" AND Importe_factura > 1000 AND Fecha_de_factura > `20140930`
LOCATE IF Ciudad_proveedor = v_ciudad
Ubicar un registro por número de registro
En el siguiente ejemplo, se muestra el uso de LOCATE para ir a un registro determinado de una tabla:
LOCATE RECORD 50
Observaciones
Nota
Si desea obtener más información sobre la forma en la que funciona este comando, consulte Guía de ayuda.
Cómo funciona
Utilice el comando LOCATE para ir directamente al primer registro de una tabla que coincida con la condición o el valor especificados.
Si se encuentra el valor o la condición que se especificó, se selecciona el primer registro coincidente en la tabla. Si no se encuentra el valor o la condición que se especificó, la tabla se ubica en el primer registro.
También puede usar LOCATE para ir directamente a un número de registro específico
Comparación entre LOCATE y FIND y SEEK
A diferencia de los comandos FIND y SEEK, el comando LOCATE no está restringido a una búsqueda en una tabla indexada o un campo de caracteres único. Con LOCATE, es posible buscar cualquier tipo de literal o una expresión que utilice cualquier tipo de datos o una mezcla de tipos de datos.
Cuando se lo utiliza para buscar en una tabla sin indexar, el comando LOCATE puede ser significativamente más lento que FIND y SEEK porque debe procesar cada registro de la tabla secuencialmente. El tiempo de procesamiento necesario depende del tamaño de la tabla, la ubicación del registro coincidente y si se reduce el alcance de la búsqueda con WHILE, FIRST o NEXT.
Admite la coincidencia parcial
Se admite la coincidencia parcial para las búsquedas de caracteres. El valor de la búsqueda puede estar incluido en un valor más extenso dentro del campo o los campos en los que se está realizando la búsqueda. Sin embargo, los valores de búsqueda deben aparecer al principio de los campos para que se consideren una coincidencia.
Activar o desactivar la coincidencia parcial
Puede activar o desactivar la coincidencia parcial usando el comando SET o un ajuste del cuadro de diálogo Opciones:
Activar la coincidencia parcial | Desactivar la coincidencia parcial |
---|---|
Especifique: SET EXACT OFF o Quite la selección de: Comparaciones de caracteres exactos en el cuadro de diálogo Opciones (Herramientas > Opciones > Tabla) Resultado: El valor de la búsqueda puede estar incluido en un valor más extenso dentro del campo o los campos en los que se está realizando la búsqueda. El valor de búsqueda debe aparecer al principio del campo para que se considere una coincidencia. |
Especifique: SET EXACT ON o Seleccione: Comparaciones de caracteres exactos en el cuadro de diálogo Opciones (Herramientas > Opciones > Tabla) Resultado El valor de la búsqueda debe coincidir de manera exacta con el valor del campo para que haya una coincidencia. |
Si desea obtener más información acerca de SET EXACT, consulte Comando SET.
Si desea obtener más información acerca de la opción Comparaciones de caracteres exactos, consulte Ficha Tabla (cuadro de diálogo Opciones).