Cómo usar la función LookUp en Power Apps: paso a paso
La función LookUp en Power Apps sirve para encontrar un único registro en un origen de datos y devolver un valor de ese registro — por ejemplo, el precio de un producto a partir de su código. Es una de las funciones más útiles de Power Fx en el día a día: evita recorrer listas a mano y mantiene la aplicación rápida y legible. A continuación verás, con ejemplos sencillos, cómo usar LookUp desde la sintaxis básica hasta un consejo de delegación para trabajar bien con muchos datos.
Requisitos previos
- Una cuenta con acceso a Power Apps y permisos para crear Canvas Apps.
- Un origen de datos con algunos registros. En este ejemplo usamos una tabla llamada
Produtoscon las columnasID,NomeyPreco. - Nociones básicas del editor de Canvas Apps: añadir controles y escribir fórmulas en la barra de fórmulas.
Paso 1: Entender la sintaxis de LookUp
La función LookUp tiene tres partes, siendo la última opcional:
LookUp( Origen, Condición, Resultado )
- Origen: la tabla o lista donde buscar, como
Produtos. - Condición: la prueba que identifica el registro, como
ID = 10. LookUp devuelve el primer registro que da verdadero. - Resultado (opcional): la columna o expresión a devolver. Si la omites, LookUp devuelve el registro completo.
Nota: en algunas configuraciones regionales el separador de argumentos es el punto y coma (;) en lugar de la coma. Usa el separador que muestre tu editor.
Paso 2: Devolver un valor con LookUp
Vamos a mostrar el precio de un producto en una etiqueta (Label). Añade un control Label y, en su propiedad Text, escribe:
LookUp(Produtos, ID = 10, Preco)
Esta fórmula busca en la tabla Produtos el primer registro cuyo ID es igual a 10 y devuelve solo el valor de la columna Preco. Un registro, un valor: eso es lo que distingue a LookUp de Filter, que devuelve una tabla con muchas filas.
Paso 3: Hacer la búsqueda dinámica
Fijar el ID en 10 no es práctico. Vamos a dejar que el usuario elija. Añade un control Drop down llamado drpProduto y define su propiedad Items como Produtos. Ahora cambia el Text de la etiqueta a:
LookUp(Produtos, ID = drpProduto.Selected.ID, Preco)
Cada vez que elijas un producto en la lista, la etiqueta muestra automáticamente el precio correspondiente. LookUp conecta la selección con los detalles de ese registro.
Paso 4: Devolver el registro completo
Si necesitas varios campos del mismo producto, no repitas LookUp muchas veces. Omite el tercer argumento para obtener el registro completo y guárdalo en una variable:
Set(varProduto, LookUp(Produtos, ID = drpProduto.Selected.ID))
A partir de aquí puedes usar varProduto.Nome, varProduto.Preco o cualquier otra columna donde la necesites, sin volver a buscar. Es más limpio y más rápido.
Paso 5: Gestionar el "no encontrado" y la delegación
Cuando ningún registro cumple la condición, LookUp devuelve un valor en blanco. Para mostrar un texto amigable en lugar de un espacio vacío, usa Coalesce:
Coalesce(LookUp(Produtos, ID = drpProduto.Selected.ID, Nome), "Sem resultado")
Otro punto importante es la delegación. LookUp es delegable en orígenes como Dataverse, SharePoint y SQL Server, siempre que la condición use operadores delegables (=, <>, <, >, StartsWith…). Mantén la condición simple: así Power Apps busca en todo el origen de datos y no solo en los primeros registros cargados.
Comprobar el resultado
Previsualiza la aplicación (tecla F5 o botón Play). Elige un producto en el drop down y confirma que la etiqueta muestra el precio correcto; cambia la selección y observa cómo se actualiza el valor. Si aparece en blanco, comprueba que el ID existe y que los nombres de las columnas son correctos. Confirma también que no hay aviso de delegación (el triángulo azul) sobre la fórmula.
Conclusión
Ya sabes usar LookUp para encontrar un registro y devolver un valor o el registro completo — ideal para mostrar detalles, precios o enlazar información entre pantallas. Un buen siguiente paso es combinar LookUp con Patch para rellenar un formulario con un registro existente, o explorar Filter cuando necesites varios registros en lugar de uno solo. ¿Dónde te ahorrará trabajo LookUp primero en tu app?