Colecciones

Completado

En las unidades anteriores, ha aprendido cómo las variables globales y de contexto almacenan valores únicos. El tercer tipo de variable, colecciones, permite almacenar una tabla de datos en memoria.

Las colecciones son útiles cuando necesita almacenar temporalmente datos estructurados para su reutilización dentro de la aplicación. Estos datos pueden proceder de un origen de datos, crearse dentro de la aplicación o ser una combinación de ambos.

Uso de colecciones para aumentar el rendimiento

Una razón común para usar colecciones es reducir las llamadas repetidas al mismo origen de datos. Por ejemplo, si la aplicación necesita hacer referencia a una lista de proyectos activos varias veces, puede recuperar los datos una vez y almacenarlos en una colección. Para almacenar una copia de la tabla Projects en una colección denominada collectProjects, use la fórmula siguiente:

Collect(collectProjects, Projects)

Esto crea una colección denominada collectProjects que tendrá las mismas filas y columnas que la tabla Projects del origen de datos. Este es un par de consideraciones que debe comprender sobre el uso de colecciones:

  • La función Collect no es delegable. Esto significa que, de forma predeterminada, solo se recuperarán y almacenarán en la colección los 500 primeros elementos del origen de datos. Para obtener más información sobre trabajar con delegación, consulte Trabajar con límites de origen de datos (límites de delegación) en una aplicación de lienzo de Power Apps.

  • Las colecciones no están vinculadas al origen de datos después de crearlas. Esto significa que los cambios en los datos de la colección no se guardan automáticamente en el origen de datos. Esto incluye los cambios que ha realizado en los datos. Si desea actualizar el origen de datos con los cambios realizados en la colección, deberá crear fórmulas para realizar esta acción, como la recopilación desde el origen de los datos.

  • Las colecciones son temporales. Cuando la aplicación se cierra, tanto la colección como todo su contenido se quitan. Si necesita almacenar datos de la colección, deberá escribirlos en un origen de datos antes de cerrar la aplicación.

Uso de colecciones dinámicas

Las colecciones no tienen que proceder de un origen de datos. También puede crear colecciones directamente dentro de la aplicación. Normalmente, esto se hace para rellenar controles desplegables, cuadros combinados o para almacenar provisionalmente los datos antes de escribirlos en un origen de datos.

La fórmula siguiente crea una colección denominada collectColors:

Collect(collectColors, {Name: "Shane", FavoriteColor: "Orange"},
{Name: "Mary", FavoriteColor: "Blue"}, {Name: "Oscar", FavoriteColor:
"Yellow"})
Nombre Color favorito
Shane Orange
Mary Azul
Oscar Amarillo

Después de crear una colección, puede reutilizarla en toda la aplicación y aplicar funciones de tabla estándar como Filter, Sort y CountRows.

Una limitación importante es que las colecciones no se pueden usar directamente con el control Formulario, aunque almacenen datos tabulares.

Para obtener más información sobre cómo trabajar con colecciones y los datos de tabla que almacenan, consulte Creación de una fórmula básica que usa tablas y registros en una aplicación de lienzo de Power Apps.

Asimismo, las colecciones almacenan datos de tabla exactamente igual que los orígenes de datos tabulares. La ruta de aprendizaje Trabajar con datos en una aplicación de lienzo de Power Apps tiene muchos conceptos que permiten trabajar con las colecciones y ampliar su potencia.

En la unidad final de este módulo, obtendrá información sobre algunos conceptos de variables adicionales y cómo aplicarlos a las aplicaciones.