Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Um componente pode receber valores de entrada para emitir ou processar dados usando propriedades de entrada personalizadas. Neste artigo, você aprenderá a trabalhar com esses componentes esperando uma ou mais propriedades de entrada com um esquema específico para essa tabela ou registro e como mapear os campos de entrada do componente para as colunas da fonte de dados.
Dica
Para saber quais são as propriedades personalizadas de entrada e saída em componentes, consulte Propriedades personalizadas nos componentes.
Mapear colunas
Use a função RenameColumns() para renomear uma ou mais colunas de uma tabela para corresponder ao esquema de propriedade de entrada para a seleção da coluna de entrada.
Por exemplo, considere um componente que espera uma entrada de tabela com o seguinte formato:
| Flavor | UnitPrice | QuantitySold |
|---|---|---|
| Morango | 1,99 | 20 |
| Chocolate | 2,99 | 45 |
A propriedade de entrada espera o tipo de dados da tabela:
O esquema da propriedade de entrada se parece com a seguinte fórmula:
Table({Flavor: "Strawberry",UnitPrice: 1.99, QuantitySold:20})
O aplicativo que consome este componente tem a seguinte tabela IceCreams que não corresponde ao esquema do componente:
| FlavorName | Preço | SaleNumber |
|---|---|---|
| Morango | 1,99 | 20 |
| Chocolate | 2,99 | 45 |
Para mapear os campos corretos, use a função RenameColumn() para renomear as colunas esperadas.
RenameColumns(IceCreams,"cra56_flavorname","Flavor","cra56_price","UnitPrice","cra56_salenumber","QuantitySold")
Os campos de entrada que o componente espera agora são mapeados com as colunas correspondentes da fonte de dados.
Mapear registros
Use a função With() para mapear um único registro.
Por exemplo, continuando do exemplo anterior de colunas de mapeamento, a propriedade de entrada personalizada de um componente dentro de um aplicativo espera um tipo de registro com o seguinte esquema:
{Flavor: "Strawberry",UnitPrice: 1.99, QuantitySold: 20}
Como a fonte de dados IceCreams espera nomes de coluna como FlavorName, Preço e SaleNumber, precisaremos alterar o mapeamento do registro assim que o componente for adicionado ao aplicativo.
Use a função With() para selecionar as colunas da tabela IceCream e mapeie-as para os campos de entrada do componente:
With(Gallery3.Selected,{Flavor:FlavorName,UnitPrice:Price,QuantitySold:SaleNumber})
A animação a seguir mostra o exemplo de um componente adicionado ao aplicativo que mostra o registro selecionado da galeria (acima do componente):
Mapear tabelas
Use a função ForAll() para mapear uma tabela com os registros esperados pelo componente adicionado ao aplicativo.
Por exemplo, no fim do exemplo de mapeamento de colunas, você pode usar a função ForAll() para mapear a tabela inteira com as colunas específicas para apontar para os campos do componente de cada linha:
ForAll(IceCreams,{Flavor:FlavorName,UnitPrice:Price,QuantitySold:SaleNumber})
Mapear usando a lista suspensa (obsoleto)
Você pode usar a guia Avançado de um componente adicionado a um aplicativo que espera a propriedade de entrada de tabela ou tipo de registro e selecionar os mapeamentos de campo usando a opção de lista suspensa. Esse mapeamento é atribuído por padrão e, a menos que você selecione manualmente os campos de mapeamento apropriados, ele pode não produzir os resultados esperados.
Por exemplo, a animação a seguir mostra a fórmula que está sendo atualizada para renomear colunas. O componente na tela não altera o mapeamento de campo, pois a seleção de campo padrão que usa essa lista suspensa precisa ser atualizada manualmente.
Esse método de selecionar o mapeamento usando a lista suspensa foi descontinuado. Em vez disso, use os métodos de mapeamento coluna, registro outabela, conforme descrito anteriormente neste artigo.
Você ainda pode usar a opção de lista suspensa para escolher o mapeamento de aplicativos existentes, embora isso não seja recomendado. Para novos aplicativos, essa opção não estará disponível por padrão. Para ativar ou desativar esse recurso obsoleto, vá para Configurações>Recursos futuros>Desativado e escolha Permitir atribuição automática de campo para entradas de componente.
Ao ativar a configuração, salve e reabra o aplicativo no Power Apps Studio. Depois de reaberto, atualize a fórmula da propriedade de entrada para acionar a validação da fórmula para que as opções de lista suspensa comecem a aparecer no painel Propriedades avançadas.
Confira também
- Fórmulas de comportamento para componentes
- Desativado: Mapear campos de componentes usando a opção de lista suspensa
- Componentes da tela
- Biblioteca de componentes
- Gerenciamento do ciclo de vida do aplicativo (ALM) da biblioteca de componentes
- Adicionar multimídia a um componente
- Fórmulas de comportamento para componentes
- Estrutura de componentes do Power Apps
- Adicionar componentes de tela a uma página personalizada em um aplicativo baseado em modelo