Funções AddColumns, DropColumns, RenameColumns e ShowColumns no PowerAppsAddColumns, DropColumns, RenameColumns, and ShowColumns functions in PowerApps

Forma uma tabela ao adicionar, remover, mudar o nome e selecionar as colunas.Shapes a table by adding, dropping, renaming, and selecting its columns.

Descrição geralOverview

Estas funções formam uma tabela ao ajustar as colunas:These functions shape a table by adjusting its columns:

  • Reduza uma tabela com várias colunas numa coluna única para utilizar com as funções de coluna única, tais como Lower ou Abs.Reduce a table that contains multiple columns down to a single column for use with single-column functions, such as Lower or Abs.
  • Adicione uma coluna calculada a uma tabela (por exemplo, uma coluna Preço Total que mostra os resultados da multiplicação da Quantidade pelo Preço Unitário).Add a calculated column to a table (for example, a Total Price column that shows the results of multiplying Quantity by Unit Price).
  • Mude o nome de uma coluna para um nome mais significativo para apresentar aos utilizadores ou utilizar em fórmulas.Rename a column to something more meaningful, for display to users or for use in formulas.

Uma tabela é um valor no PowerApps, como uma cadeia ou um número.A table is a value in PowerApps, just like a string or a number. Pode especificar uma tabela como um argumento numa fórmula e as funções podem devolver uma tabela como um resultado.You can specify a table as an argument in a formula, and functions can return a table as a result. As funções que este tópico descreve não modificam a tabela.The functions that this topic describes don't modify a table. Em vez disso, consideram uma tabela como um argumento e devolvem uma nova tabela com uma transformação aplicada.Instead they take a table as an argument and return a new table with a transform applied. Consulte working with tables (trabalhar com tabelas) para obter mais detalhes.See working with tables for more details.

Não pode modificar as colunas de uma origem de dados através destas funções.You can't modify the columns of a data source by using these functions. Tem de modificar os dados na origem.You must modify the data at its source. Pode adicionar colunas a uma coleção com a função Collect.You can add columns to a collection with the Collect function. Para obter mais detalhes, veja trabalhar com origens de dados.See working with data sources for more details.

DescriçãoDescription

A função AddColumns adiciona uma coluna a uma tabela e uma fórmula define os valores nessa coluna.The AddColumns function adds a column to a table, and a formula defines the values in that column. As colunas existentes permanecem inalteradas.Existing columns remain unmodified.

A fórmula é avaliada para cada registo da tabela.The formula is evaluated for each record of the table.

Estão disponíveis dentro da fórmula os campos do registo que está a ser processado num dado momento.Fields of the record currently being processed are available within the formula. Basta referenciá-los por nome, como faria com qualquer outro valor.You simply reference them by name as you would any other value. Também pode referenciar propriedades do controlo e outros valores a partir de qualquer parte da sua aplicação.You can also reference control properties and other values from throughout your app. Para obter mais detalhes, veja os exemplos abaixo e trabalhar com o âmbito de registo.For more details, see the examples below and working with record scope.

A função DropColumns exclui colunas de uma tabela.The DropColumns function excludes columns from a table. Todas as outras colunas existentes permanecem inalteradas.All other columns remain unmodified. DropColumns exclui colunas e ShowColumns inclui colunas.DropColumns excludes columns, and ShowColumns includes columns.

A função RenameColumns muda o nome das colunas de uma tabela.The RenameColumns function renames columns of a table. Todas as outras colunas conservam os nomes originais.All other columns retain their original names.

A função ShowColumns inclui colunas de uma tabela e remove todas as outras colunas.The ShowColumns function includes columns of a table and drops all other columns. Pode utilizar ShowColumns para criar uma tabela de coluna única a partir de uma tabela de várias colunas.You can use ShowColumns to create a single-column table from a multi-column table. ShowColumns inclui colunas e DropColumns exclui colunas.ShowColumns includes columns, and DropColumns excludes columns.

Para todas estas funções, o resultado é uma nova tabela com a transformação aplicada.For all these functions, the result is a new table with the transform applied. A tabela original não é modificada.The original table isn't modified.

Quando é utilizada com origem de dados, estas funções não podem ser delegadas.When used with a data source, these functions can't be delegated. Só será obtida a primeira porção da origem de dados e, depois, a função aplicada.Only the first portion of the data source will be retrieved and then the function applied. O resultado poderá não representar a totalidade.The result may not represent the complete story. Quando chegar a hora de criação, será apresentado um ponto azul para o lembrar desta limitação, assim como uma sugestão para mudar para alternativas delegáveis sempre que possível.A blue dot will appear at authoring time to remind you of this limitation and to suggest switching to delegable alternatives where possible. Para obter mais informações, veja a descrição geral da delegação.For more information, see the delegation overview.

SintaxeSyntax

AddColumns( Tabela, ColumnName1, Formula1 [, ColumnName2, Formula2, ... ] )AddColumns( Table, ColumnName1, Formula1 [, ColumnName2, Formula2, ... ] )

  • Tabela - Necessário.Table - Required. Tabela a utilizar.Table to operate on.
  • ColumnName(s) - Necessário.ColumnName(s) - Required. Nome(s) da(s) coluna(s) a adicionar.Name(s) of the column(s) to add. Tem de especificar uma cadeia (por exemplo, "Name" com aspas incluídas) para este argumento.You must specify a string (for example, "Name" with double quotes included) for this argument.
  • Fórmula(s) – Necessário.Formula(s) - Required. Fórmula(s) a avaliar para cada registo.Formula(s) to evaluate for each record. O resultado é adicionado como o valor da nova coluna correspondente.The result is added as the value of the corresponding new column. Pode referenciar outras colunas da tabela nesta fórmula.You can reference other columns of the table in this formula.

DropColumns( Tabela, ColumnName1 [, ColumnName2, ... ] )DropColumns( Table, ColumnName1 [, ColumnName2, ... ] )

  • Tabela - Necessário.Table - Required. Tabela a utilizar.Table to operate on.
  • ColumnName(s) - Necessário.ColumnName(s) - Required. Nome(s) da(s) coluna(s) a remover.Name(s) of the column(s) to drop. Tem de especificar uma cadeia (por exemplo, "Name" com aspas incluídas) para este argumento.You must specify a string (for example, "Name" with double quotes included) for this argument.

RenameColumns( Tabela, OldColumneName, NewColumnName )RenameColumns( Table, OldColumneName, NewColumnName )

  • Tabela - Necessário.Table - Required. Tabela a utilizar.Table to operate on.
  • OldColumnName – Necessário.OldColumnName - Required. Nome da coluna a mudar.Name of the column to rename. Este nome tem de ser uma cadeia (por exemplo "Name" com aspas incluídas).This name must be a string (for example "Name" with double quotes included).
  • NewColumnName – Necessário.NewColumnName - Required. Nome de substituição.Replacement name. Tem de especificar uma cadeia (por exemplo, "Customer Name" com aspas incluídas) para este argumento.You must specify a string (for example, "Customer Name" with double quotes included) for this argument.

ShowColumns( Tabela, ColumnName1 [, ColumnName2, ... ] )ShowColumns( Table, ColumnName1 [, ColumnName2, ... ] )

  • Tabela - Necessário.Table - Required. Tabela a utilizar.Table to operate on.
  • ColumnName(s) - Necessário.ColumnName(s) - Required. Nome(s) da(s) coluna(s) a incluir.Name(s) of the column(s) to include. Tem de especificar uma cadeia (por exemplo, "Name" com aspas incluídas) para este argumento.You must specify a string (for example, "Name" with double quotes included) for this argument.

ExemplosExamples

Para os exemplos desta secção, utilize a origem de dados IceCreamSales, que contém os dados nesta tabela:The examples in this section use the IceCreamSales data source, which contains the data in this table:

Nenhum destes exemplos modifica a origem de dados IceCreamSales.None of these examples modify the IceCreamSales data source. Cada função transforma o valor da origem de dados como uma tabela e devolve esse valor como resultado.Each function transforms the value of the data source as a table and returns that value as the result.

FórmulaFormula DescriçãoDescription ResultadoResult
AddColumns( IceCreamSales, "Receitas", UnitPrice * QuantitySold )AddColumns( IceCreamSales, "Revenue", UnitPrice * QuantitySold ) Adiciona uma coluna Receitas ao resultado.Adds a Revenue column to the result. Para cada registo, é avaliado o valor UnitPrice * QuantitySold e o resultado é colocado numa nova coluna.For each record, UnitPrice * QuantitySold is evaluated, and the result is placed in the new column.
DropColumns( IceCreamSales, "UnitPrice" )DropColumns( IceCreamSales, "UnitPrice" ) Exclui a coluna UnitPrice do resultado.Excludes the UnitPrice column from the result. Utilize esta função para excluir colunas e utilize ShowColumns para as incluir.Use this function to exclude columns, and use ShowColumns to include them.
ShowColumns( IceCreamSales, "Sabor" )ShowColumns( IceCreamSales, "Flavor" ) Inclui apenas a coluna Sabor no resultado.Includes only the Flavor column in the result. Utilize esta função para incluir colunas e utilize DropColumns para as excluir.Use this function include columns, and use DropColumns to exclude them.
RenameColumns( IceCreamSales, "UnitPrice", "Preço")RenameColumns( IceCreamSales, "UnitPrice", "Price") Muda o nome da coluna UnitPrice no resultado.Renames the UnitPrice colum in the result.
DropColumns(
RenameColumns(
AddColumns( IceCreamSales, "Receitas",
UnitPrice * QuantitySold ),
"UnitPrice", "Preço" ),
"Quantidade" )
DropColumns(
RenameColumns(
AddColumns( IceCreamSales, "Revenue",
UnitPrice * QuantitySold ),
"UnitPrice", "Price" ),
"Quantity" )
Efetua as seguintes transformações de tabela por ordem, a partir da fórmula:Performs the following table transforms in order, starting from the inside of the formula:
  1. Adiciona uma coluna Receitas com base no cálculo por registo de UnitPrice * Quantidade.Adds a Revenue column based on the per-record calculation of UnitPrice * Quantity.
  2. Muda o nome UnitPrice para Preço.Renames UnitPrice to Price.
  3. Exclui a coluna Quantidade.Excludes the Quantity column.
Tenha em atenção que a ordem é importante.Note that order is important. Por exemplo, não se consegue calcular com UnitPrice depois de o seu nome ter sido mudado.For example, we can't calculate with UnitPrice after it has been renamed.

Passo a passoStep by step

  1. Importe ou crie uma coleção denominada Inventário, tal como descrito no primeiro subprocedimento em Mostrar imagens e texto numa galeria.Import or create a collection named Inventory as the first subprocedure in Show text and images in a gallery describes.
  2. Adicione um botão e defina a respetiva propriedade OnSelect a esta fórmula:Add a button, and set its OnSelect property to this formula:

    ClearCollect(Inventory2, RenameColumns(Inventory, "ProductName", "JacketID"))ClearCollect(Inventory2, RenameColumns(Inventory, "ProductName", "JacketID"))

  3. Prima F5, selecione o botão que acabou de criar e, em seguida, prima Esc para regressar à área de trabalho de design.Press F5, select the button that you just created, and then press Esc to return to the design workspace.
  4. No menu Ficheiro, selecione Coleções.On the File menu, select Collections.
  5. Confirme se criou uma coleção denominada Inventory2.Confirm that you've created a collection, named Inventory2. A nova coleção contém as mesmas informações que o Inventário, exceto que a coluna denominada ProductName no Inventário é denominada JacketID no Inventory2.The new collection contains the same information as Inventory except that the column named ProductName in Inventory is named JacketID in Inventory2.