Collections

Concluído

Nas unidades anteriores, você aprendeu como variáveis globais e de contexto armazenam valores únicos. O terceiro tipo de variável, coleções, permite que você armazene uma tabela de dados na memória.

Coleções são úteis quando você precisa armazenar temporariamente dados estruturados para reutilização em seu aplicativo. Esses dados podem vir de uma fonte de dados, ser criados dentro do aplicativo ou ser uma combinação de ambos.

Usando coleções para aumentar o desempenho

Um motivo comum para usar coleções é reduzir chamadas repetidas para a mesma fonte de dados. Por exemplo, se seu aplicativo precisar fazer referência a uma lista de projetos ativos várias vezes, você poderá recuperar os dados uma vez e armazená-los em uma coleção. Para armazenar uma cópia da tabela Projects em uma coleção chamada collectProjects, use a seguinte fórmula:

Collect(collectProjects, Projects)

Isso cria uma coleção chamada collectProjects que terá as mesmas linhas e colunas que a tabela Projetos da fonte de dados. Aqui estão algumas considerações que você precisa entender sobre como usar coleções:

  • A função Coletar não é delegável. Isso significa que, por padrão, somente os primeiros 500 registros da fonte de dados serão recuperados e armazenados na coleção. Para obter mais informações sobre como trabalhar com delegação, consulte Trabalhar com limites de fonte de dados (limites de delegação) em um aplicativo canvas do Power Apps

  • As coleções não são vinculadas à fonte de dados depois que você as cria. Isso significa que as alterações nos dados da coleção não são salvas automaticamente na fonte de dados. Isso inclui alterações feitas nos dados. Caso queira atualizar a fonte de dados com base nas alterações na coleção, você precisará criar fórmulas para fazer isso, como coletar novamente da fonte de dados.

  • As coleções são temporárias. Quando você fecha o aplicativo, a coleção e todo o conteúdo são removidos. Se você precisar armazenar dados de coleta, será necessário gravá-los em uma fonte de dados antes de fechar o aplicativo.

Usando coleções dinâmicas

As coleções não precisam vir de uma fonte de dados. Você também pode criar coleções diretamente em seu aplicativo. Isso geralmente é feito para preencher os controles suspensos, as caixas de combinação ou para preparar dados antes de escrevê-los em uma fonte de dados.

A fórmula a seguir cria uma coleção chamada collectColors:

Collect(collectColors, {Name: "Shane", FavoriteColor: "Orange"},
{Name: "Mary", FavoriteColor: "Blue"}, {Name: "Oscar", FavoriteColor:
"Yellow"})
Nome CorFavorita
Shane Orange
Maria Blue
Óscar Yellow

Depois de criar uma coleção, você pode reutilizá-la em todo o aplicativo e aplicar funções de tabela padrão, como Filtro, Classificação e CountRows.

Uma limitação importante é que as coleções não podem ser usadas diretamente com o controle Formulário, mesmo que armazenem dados tabulares.

Para obter mais informações sobre como trabalhar com coleções e os dados de tabela que armazenam, consulte Criar uma fórmula básica que usa tabelas e registros em um aplicativo de tela do Power Apps.

Além disso, as coleções armazenam dados de tabela não de forma diferente das fontes de dados tabulares. O roteiro de aprendizagem Trabalhar com dados em um aplicativo de tela do Power Apps inclui muitos conceitos que permitem aprimorar e expandir o potencial de suas coleções.

Na unidade final deste módulo, você aprenderá sobre alguns conceitos de variáveis adicionais e como aplicá-los aos seus aplicativos.