Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Uno de los patrones más importantes para las aplicaciones de datos empresariales es limitar el tamaño de los datos que captura en Power Apps. Si las cargas de datos son pequeñas, casi todo lo demás es más fácil. Los controles Galería y Tabla realizan esta función automáticamente cuando te conectas directamente al origen de datos en la propiedad Items. Por ejemplo, cuando se conecta directamente a un origen de datos remoto, una galería controla páginas de datos en pequeños incrementos, por ejemplo, 100 registros. Este valor predeterminado aprovecha el hecho de que un usuario final rara vez necesita más de cien registros para una tarea de usuario.
Usar la delegación
Una manera clave de mantener pequeñas las cargas de datos es confiar en el origen de datos para procesar la información antes de que llegue a Power Apps. La delegación es cuando Power Fx puede traducir una expresión de Power Fx en una expresión de consulta que un origen de datos, como Dataverse, SQL Server, SharePoint y Excel pueden controlar por sí solos. Y, a continuación, Power Fx delega esa consulta al origen de datos o le da la responsabilidad de ejecutar la consulta y el mashup de datos. El origen de datos genera los datos correctos y los devuelve a Power Apps.
Cuando el origen de datos se enlaza directamente a una galería o tabla, los datos se paginan o se devuelven a Power Apps en pequeños lotes eficientes de 100 registros. Los distintos orígenes de datos tienen diferentes funcionalidades. Dataverse, por ejemplo, tiene muchas más funcionalidades para filtrar datos en el servidor que Excel. Un buen ejemplo es CountRows y CountIf. Dataverse admite CountRows de forma limitada. Dataverse calcula el tamaño de la tabla periódicamente y mantiene ese valor alrededor. Cuando se llama a CountRows, se le asigna ese valor. De este modo, no tiene que realizar un escaneo completo de tabla para obtener el número exacto de cada invocación a CountRows. Pero Dataverse también admite un recuento exacto con CountIf de hasta 50 000 filas. Proporciona estas dos funcionalidades diferentes como una manera de ayudar a conservar un buen rendimiento del servidor de Dataverse. En cambio, SharePoint no admite esta función. Por lo tanto, una expresión de Power Fx con CountRows o CountIf para SharePoint no está delegada. En su lugar, Power Apps descarga un número limitado de filas, de 500 a 2000. Power Fx funciona en los 500/2000 registros localmente y devuelve un resultado. Si los datos siempre son inferiores a 500/2000 registros, este enfoque puede funcionar. Pero si es mayor que 500/2000 registros, es posible que obtenga resultados incorrectos.
Evitar demasiadas columnas
De forma predeterminada, Power Apps calcula las columnas reales que necesita para una consulta determinada mediante una llamada de característica Selección de columna explícita. Esta característica está activada de forma predeterminada para todas las aplicaciones nuevas. Para activar la función de selección explícita de columnas en la aplicación canvas, vaya a Configuración>Próximas características>Vista previa> y active el interruptor Selección de columna explícita.
Sugerencias
Para lograr el objetivo de una carga de datos pequeña, tenga en cuenta las siguientes preguntas y sugerencias:
Procure que la consulta predeterminada de una galería o tabla devuelva sólo aproximadamente 100 – 200 registros. Si usa una consulta delegable, esto se produce automáticamente. Si está consultando una API u otro origen que no admite la delegación, use parámetros para refinar los resultados.
- Considere la posibilidad de usar una vista basada en orígenes de datos que filtre automáticamente los datos. La mayoría de las aplicaciones empresariales hacen un uso intensivo de las vistas del origen de datos.
- Considere la posibilidad de usar valores de filtro o búsqueda predeterminados para definir el ámbito de los datos.
- Considere la posibilidad de requerir argumentos de búsqueda en la interfaz de usuario antes de mostrar los datos.
- Tenga en cuenta estas preguntas sobre la aplicación:
- ¿Qué es necesario en una pantalla determinada de forma predeterminada?
- ¿Qué datos necesita realmente el usuario final para realizar una acción empresarial determinada?
- Por lo general, los usuarios no necesitan miles de registros en una pantalla inicial para realizar una tarea.
Comience a crear su consulta para una galería o tabla utilizando las tablas de delegación para su origen de datos. Elija solo las funciones admitidas para la consulta. Si la consulta no es delegable, ¿qué puede hacer para que sea delegable?