Filtrar los datos

Completado

En el ámbito de las aplicaciones empresariales, la precisión en la presentación de los datos es crucial. Para lograr esto, utilice funciones como Filter y Search. Al delegar estas funciones al origen de datos para el procesamiento, se agiliza el flujo de información.

En este contexto, la delegación se refiere a que estas funciones actúan como filtros selectivos en el lado del servidor. ¿Cuál es el resultado? La aplicación busca y procesa selectivamente solo los datos necesarios, lo que mejora la experiencia del usuario. Este método reduce la transmisión de datos, pero también optimiza la eficiencia para los usuarios.

En el módulo anterior, aprendió a agregar un origen de datos a una galería. En este módulo, ampliará esos conceptos de tal forma que modelará los datos para mostrar lo que es pertinente para el usuario.

Usar la función Filter para filtrar los datos

La función Filter es la función más usada para modelar los datos. Con esta función, puede crear consultas sencillas que permiten devolver solo los datos que necesita. Por ejemplo, si el origen de datos tiene una columna de texto llamada IsActive, con los valores o No para realizar el seguimiento del estado del proyecto, podría filtrar los datos usando la siguiente fórmula en la propiedad Items de la galería.

Filter(YourDataSourcetable, IsActive = "Yes")

En lugar de mostrar todas las filas de la tabla, la galería mostraría únicamente las filas que tenían Sí en la columna IsActive. Como resultado, los usuarios tienen menos filas que ordenar y la aplicación acelera su ritmo, ya que se reduce la cantidad de datos descargados.

Operador "And"

A fin de emplear un nivel superior de filtrado, debemos usar operadores para crear filtros más complejos. Un método comúnmente utilizado es emplear el operador "And" para fusionar múltiples criterios dentro del filtro. Al emplear el operador "And", todas las condiciones deben evaluarse como verdaderas para que el filtro sea efectivo. Por ejemplo, podría ampliar el ejemplo anterior para mostrar todas las filas en las que IsActive sea Yes y Region sea North mediante la siguiente consulta.

Filter(YourDataSourcetable, IsActive = "Yes" And Region = "North")

Esta fórmula devuelve todas las filas en las que IsActive sea Yes y Region sea North. Tenga en cuenta que, al utilizar el operador "And" en la fórmula, este debe escribirse en mayúsculas.

Operador "Or"

Presentamos otro operador esencial para filtros: el operador "Or". A diferencia del operador "And", el operador "Or" solo requiere que una ecuación sea verdadera para recuperar la fila. Como ocurre con "And", es importante escribir en mayúscula el operador "Or" para que funcione correctamente dentro de los criterios de filtro.

Retomando el ejemplo anterior, a veces puede que quiera ver todas las filas en las que Region sea North o West. Para crear esa consulta, debería usar el operador "Or".

Filter(YourDataSourcetable, Region = "North" Or Region = "West")

Esta fórmula devuelve todas las filas en las que Region sea igual a North o West. Además, tenga en cuenta la sintaxis de la fórmula: Region = "North" Or Region = "West". Un error común es escribir Region = "North" Or "West". Esa fórmula no es correcta.

Combinación de operadores

En escenarios que exigen condiciones complejas, la combinación de operadores permite una lógica más sofisticada. Pensemos de nuevo en los ejemplos anteriores: supongamos que quiere filtrar el origen de datos para obtener todas las filas en las que IsActive sea Yes y Region sea North o West.

Para lograr esto, tendrá que añadir paréntesis en la fórmula. La fórmula sería así:

Filter(YourDataSourcetable, IsActive = "Yes" And (Region = "North" Or Region = "West"))

La fórmula evalúa primero los paréntesis. En esta fórmula, primero se determina si Region es North o West. Si se cumple cualquiera de las evaluaciones, el lado derecho será verdadero. A continuación, la fórmula comprobará el valor de la columna IsActive. Si es igual a "Yes", la fila es una coincidencia y la función Filter la devolverá. Microsoft Power Apps admite una amplia variedad de operadores, y su anidamiento, para modelar los datos.

Para obtener más información sobre los distintos operadores que están disponibles en Power Apps, consulte Operadores y tipos de datos de Power Apps en la documentación. Otros ejemplos incluyen greater than, less than, not, in, exact in y muchos más. Además, al evaluar los operadores, asegúrese de entender la delegación. Cada operador tiene un comportamiento de delegación diferente con diferentes orígenes de datos. Para ver una lista de orígenes de datos y sus operadores, consulte Descripción de la delegación en una aplicación de lienzo.