Saltar al contenido principal
LookUp - función de script

EN ESTA PÁGINA

LookUp - función de script

Lookup() busca en una tabla que ya está cargada y devuelve el valor de field_name correspondiente a la primera vez que aparece el valor match_field_value en el campo match_field_name. La tabla puede ser la actual u otra cargada anteriormente.

Syntax:  

lookup(field_name, match_field_name, match_field_value [, table_name])

Return data type: dual

Arguments:  

Argumentos
Argumento Descripción
nombre_campo Nombre del campo para el que se requiere el valor devuelto.El valor de entrada debe suministrarse como una cadena (por ejemplo, literales entrecomillados).
match_field_name Nombre del campo que buscar en match_field_value. El valor de entrada debe suministrarse como una cadena (por ejemplo, literales entrecomillados).
match_field_value Valor que buscar en el campo match_field_name.
table_name

Nombre de la tabla en la que buscar el valor. El valor de entrada debe suministrarse como una cadena (por ejemplo, literales entrecomillados).

Si se omite table_name, se presupone la tabla actual.

Nota informativaLos argumentos sin comillas se refieren a la tabla actual. Para referirse a otras tablas, encierre un argumento entre comillas simples.

Limitations:  

El orden de búsqueda es el orden de carga, a menos que la tabla sea el resultado de operaciones complejas, como uniones entre diversas tablas, en cuyo caso el orden no está bien definido. Tanto field_name como match_field_name deben ser campos en la misma tabla, especificados por table_name.

Si no encuentra ningún resultado, devuelve NULL.

Los datos de muestra utilizan la función Lookup() de la siguiente forma:

Lookup('Category', 'ProductID', ProductID, 'ProductList')

Agregue el script de ejemplo en su app y ejecútelo. A continuación, agregue como mínimo los campos de la columna de resultados en una hoja de su app para ver el resultado.

ProductList:

Load * Inline [

ProductID|Product|Category|Price

1|AA|1|1

2|BB|1|3

3|CC|2|8

4|DD|3|2

] (delimiter is '|');

 

OrderData:

Load *, Lookup('Category', 'ProductID', ProductID, 'ProductList') as CategoryID

Inline [

InvoiceID|CustomerID|ProductID|Units

1|Astrida|1|8

1|Astrida|2|6

2|Betacab|3|10

3|Divadip|3|5

4|Divadip|4|10

] (delimiter is '|');

 

Drop Table ProductList

 

La tabla ProductList se carga primero.

La función Lookup() se utiliza para construir la tabla OrderData. Especifica el tercer argumento como ProductID. Este es el campo para el que se buscará el valor en el segundo argumento 'ProductID' en ProductList, como se indica por las comillas simples que lo incluyen.

La función devuelve el valor de 'Category' (en la tabla ProductList), cargado como CategoryID.

La sentencia drop elimina la tabla ProductList del modelo de datos, porque no es necesaria, lo que nos deja la tabla OrderData con el siguiente resultado:

Tabla resultante
ProductID InvoiceID IDCliente Unidades: CategoryID
1 1 Astrida 8 1
2 1 Astrida 6 1
3 2 Betacab 10 2
3 3 Divadip 5 2
4 4 Divadip 10 3
Nota informativaLa función Lookup() es flexible y puede acceder a cualquier tabla cargada previamente. No obstante, es lento si se compara con la función Applymap().