Funções Collect, Clear e ClearCollect no PowerAppsCollect, Clear, and ClearCollect functions in PowerApps

Cria e limpa coleções e adiciona registos a qualquer origem de dados.Creates and clears collections and adds records to any data source.

DescriçãoDescription

CollectCollect

A função Collect adiciona registos a uma origem de dados.The Collect function adds records to a data source. Os itens a serem adicionados podem ser:The items to be added can be:

  • Um valor único: o valor é colocado no campo Valor de um novo registo.A single value: The value is placed in the Value field of a new record. Todas as outras propriedades são deixadas em branco.All other properties are left blank.
  • Um registo: cada propriedade nomeada é colocada na propriedade correspondente de um novo registo.A record: Each named property is placed in the corresponding property of a new record. Todas as outras propriedades são deixadas em branco.All other properties are left blank.
  • Uma tabela: cada registo da tabela é adicionado como um registo separado da origem de dados, conforme descrito acima.A table: Each record of the table is added as a separate record of the data source as described above. A tabela não é adicionada como uma tabela aninhada a um registo.The table is not added as a nested table to a record. Para tal, molde primeiro a tabela num registo.To accomplish this, wrap the table in a record first.

Quando utilizada com uma coleção, serão criadas colunas adicionais, conforme necessário.When used with a collection, additional columns will be created as needed. As colunas de outras origens de dados são corrigidas pela origem de dados e não é possível adicionar novas colunas.The columns for other data sources are fixed by the data source and new columns cannot be added.

Se a origem de dados ainda não existir, será criada uma coleção.If the data source doesn't already exist, a collection is created.

Por vezes, as coleções são utilizadas para conter variáveis globais ou efetuar uma cópia temporária de uma origem de dados.Collections are sometimes used to hold global variables or make a temporary copy of a data source. Os PowerApps são baseados em fórmulas que são recalculadas automaticamente à medida que o utilizador interage com uma aplicação.PowerApps are based on formulas that automatically recalculate as the user interacts with an app. As coleções não beneficiam desta vantagem e, se as utilizar, pode tornar a aplicação mais difícil de criar e compreender.Collections do not enjoy this benefit and their use can make your app harder to create and understand. Antes de utilizar uma coleção desta forma, consulte trabalhar com variáveis.Before using a collection in this manner, review working with variables.

Também pode utilizar a função Patch para criar registos numa origem de dados.You can also use the Patch function to create records in a data source.

Collect devolve a origem de dados modificada como uma tabela.Collect returns the modified data source as a table. Só pode utilizar a função Collect numa fórmula de comportamento.Collect can only be used in a behavior formula.

LimparClear

A função Clear elimina todos os registos de uma coleção.The Clear function deletes all the records of a collection. As colunas da coleção serão mantidas.The columns of the collection will remain.

Note que Clear apenas funciona em coleções e não noutras origens de dados.Note that Clear only operates on collections and not other data sources. Pode utilizar RemoveIf( DataSource, verdadeiro ) para essa finalidade.You can use RemoveIf( DataSource, true ) for this purpose. Deverá ter muito cuidado ao utilizar esta função, uma vez que removerá todos os registos do armazenamento da origem de dados e poderá afetar os outros utilizadores.Use caution as this will remove all records from the data source's storage and can affect other users.

Pode utilizar a função Remove para remover seletivamente os registos.You can use the Remove function to selectively remove records.

Clear não devolve nenhum valor.Clear has no return value. Esta função só pode ser utilizada numa fórmula de comportamento.It can only be used in a behavior formula.

ClearCollectClearCollect

A função ClearCollect elimina todos os registos de uma coleção e, em seguida, adiciona um conjunto de registos diferentes à mesma coleção.The ClearCollect function deletes all the records from a collection and then adds a different set of records to the same collection. Com uma única função, ClearCollect disponibiliza a combinação de Clear e de Collect.With a single function, ClearCollect offers the combination of Clear and then Collect.

ClearCollect devolve a coleção modificada como uma tabela.ClearCollect returns the modified collection as a table. ClearCollect só pode ser utilizada numa fórmula de comportamento.ClearCollect can only be used in a behavior formula.

SintaxeSyntax

Collect( DataSource, Item, ... )Collect( DataSource, Item, ... )

  • DataSource – Necessário.DataSource – Required. A origem de dados à qual pretende adicionar dados.The data source that you want to add data to. Se ainda não existir, será criada uma nova coleção.If it does not already exist, a new collection is created.
  • Item(s) – Necessário.Item(s) - Required. Um ou mais registos ou tabelas a adicionar à origem de dados.One or more records or tables to add to the data source.

Clear( Coleção )Clear( Collection )

  • Coleção – Necessário.Collection – Required. A coleção que pretende limpar.The collection that you want to clear.

ClearCollect( Coleção, Item, ... )ClearCollect( Collection, Item, ... )

  • Coleção – Necessário.Collection – Required. A coleção que pretende limpar e, em seguida, adicionar dados.The collection that you want to clear and then add data to.
  • Item(s) – Necessário.Item(s) - Required. Um ou mais registos ou tabelas a adicionar à origem de dados.One or more records or tables to add to the data source.

ExemplosExamples

Limpar e adicionar registos a uma origem de dadosClearing and adding records to a data source

Nestes exemplos, vai apagar e adicionar registos a uma coleção denominada Gelado.In these examples, you'll erase and add to a collection that's named IceCream. A origem de dados começa com estes conteúdos:The data source begins with these contents:

FórmulaFormula DescriçãoDescription ResultadoResult
ClearCollect( Gelado, { Sabor: “Morango”, Quantidade: 300 } )ClearCollect( IceCream, { Flavor: "Strawberry", Quantity: 300 } ) Limpa todos os dados da coleção Gelado e, em seguida, adiciona um registo que inclui uma quantidade de gelado de morango.Clears all data from the IceCream collection and then adds a record that includes a quantity of strawberry ice cream.

A origem de dados Gelado também foi modificada.The IceCream data source has also been modified.
Collect( Gelado, { Sabor: Pistácio”, Quantidade: 40 }, { Sabor: “Laranja”, Quantidade: 200 } )Collect( IceCream, { Flavor: "Pistachio", Quantity: 40 }, { Flavor: "Orange", Quantity: 200 } ) Adiciona dois registos à coleção Gelado, que inclui uma quantidade de gelado de pistácio e Laranja.Adds two records to the IceCream collection that includes a quantity of pistachio and Orange ice cream.

A origem de dados Gelado também foi modificada.The IceCream data source has also been modified.
Clear( Gelado)Clear( IceCream ) Remove todos os registos da coleção Gelado.Removes all records from the IceCream collection.

A origem de dados Gelado também foi modificada.The IceCream data source has also been modified.

Passo a passoStep by step

  1. Adicione um botão e defina a propriedade OnSelect para esta função:Add a button, and set its OnSelect property to this function:
    Collect(Produtos, "Europa", "Ganymede", "Callisto")Collect(Products, "Europa", "Ganymede", "Callisto")

    Esta função cria uma coleção denominada Produtos, que contém uma linha para cada um dos três nomes de produtos.This function creates a collection that's named Products that contains a row for each of three product names.

  2. Prima F5, clique no botão e, em seguida, prima a tecla Esc para regressar à área de trabalho de design.Press F5, click the button, and then press the Esc key to return to the design workspace.
  3. (opcional) Para apresentar uma pré-visualização da coleção criada, clique em Coleções no separador Conteúdo.(optional) To display a preview of the collection that you created, click Collections on the Content tab.