Compartilhar via


Edite os registros relacionados da tabela diretamente do formulário principal de outra tabela

Existem várias maneiras de trabalhar com registros de tabela relacionados em um formulário de tabela no Power Apps. Por exemplo, você pode incluir tabelas relacionadas no modo somente leitura com um formulário de visualização rápida e criar ou editar um registro usando um formulário principal em um diálogo.

Outra maneira de trabalhar com registros de tabelas relacionadas é adicionar um controle de componente de formulário ao formulário principal de outra tabela. O controle de componente de formulário permite que os usuários editem informações de um registro de tabela relacionado diretamente de outro formulário de tabela.

Por exemplo, este é o componente de formulário em uma guia separada no formulário de conta principal, que permite ao usuário editar um registro de contato sem sair do formulário de conta.

Controle de componente de formulário adicionado a uma guia separada.

Por exemplo, este é o componente de formulário em uma guia existente no formulário da conta principal, que também permite ao usuário editar um registro do contato sem sair da guia Resumo do formulário da conta.

Controle de componente de formulário adicionado a uma guia existente.

Adicionar o componente de formulário a um formulário principal da tabela

  1. No painel de navegação esquerdo, selecione Componentes. Se o item não estiver no painel lateral, selecione …Mais e selecione o item desejado.
  2. Expanda Entrada ou Tela e selecione Formulário. Na página de configuração do controle de componente de formulário, selecione as propriedades do controle:
    • Selecione a Coluna de pesquisa para o formulário.
    • Selecione o Formulário relacionado. Dependendo da configuração da tabela relacionada para a coluna:
      • Se a coluna estiver conectada a uma única tabela (como a coluna Criação de), selecione o Formulário relacionado a ser usado. Adicionar controle de componente de formulário para uma única tabela relacionada
      • Se a coluna estiver conectada a várias tabelas (polimórficas, como a coluna do proprietário), selecione + Formulário relacionado e, em seguida, selecione Adicionar para adicionar o formulário relacionado. Continue a selecionar + Formulário relacionado > Adicionar para adicionar um formulário relacionado para cada tabela relacionada. Adicionar componente de formulário para várias tabelas relacionadas
    • Por padrão, todos os tipos de aplicativo cliente para Web, Telefone e Tablet estão habilitados para exibir o formulário. Limpe os tipos de cliente em que não deseja que o formulário seja exibido.
  3. Selecione Concluído.
  4. Salve e Publique o formulário.

Adicione o componente de formulário usando a experiência clássica

Neste exemplo, o formulário principal padrão Contato é configurado para o controle de componente de formulário adicionado ao formulário principal da conta.

Importante

A maneira como você adiciona um controle de componente de formulário foi alterada. Recomendamos usar a experiência mais recente. Mais informações: Adicionar o componente de formulário a um formulário principal da tabela

  1. Entrar no Power Apps.

  2. Selecione Tabelas no painel esquerdo. Como alternativa, abra uma solução e, em seguida, uma tabela, como Conta. Se o item não estiver no painel lateral, selecione …Mais e selecione o item desejado.

  3. Selecione Formulários no menu de componentes.

  4. Selecione um formulário com um tipo Principal dentre os formulários disponíveis.

  5. Selecione Alternar para clássico. A interface clássica do editor de formulários é aberta como uma guia em seu navegador.

  6. Selecione a guia Inserir. Em seguida, crie uma nova guia e adicione uma nova seção ou adicione uma nova seção a uma guia existente.

  7. Na nova seção, adicione uma coluna de pesquisa, tal como a coluna de pesquisa Contato primário.

  8. Selecione a coluna de pesquisa e, em seguida, na guia Casa, selecione Alterar propriedades.

  9. Na guia Controles, selecione Adicionar controle, na lista de tipos de controle, selecione Controle de componente de formulário e selecione Adicionar.

    Selecione o Controle de componente de formulário.

  10. Selecione Rede, Tablet e Telefone para o componente.

  11. Selecione Editar (ícone de lápis) e, na caixa de diálogo Configurar propriedade, selecione Vincular a um valor estático e, em seguida, adicione uma entrada XML semelhante a esta em que TableName é o nome exclusivo da tabela e FormID é o ID de formulário do formulário principal:<QuickForms><QuickFormIds><QuickFormId entityname="TableName">FormID</QuickFormId></QuickFormIds></QuickForms>

    • Por exemplo, para renderizar o formulário principal Contato no formulário de conta, use: <QuickForms><QuickFormIds><QuickFormId entityname="contact">1fed44d1-ae68-4a41-bd2b-f13acac4acfa</QuickFormId></QuickFormIds></QuickForms>

    Configurar o controle de componente de formulário.

  12. Selecione OK e depois OK novamente.

  13. Salve e então Publique seu formulário.

Dica

Para encontrar o nome exclusivo de uma tabela, selecione a tabela no Power Apps e então selecione Configurações. O Nome aparece no painel da tabela Editar. O ID do formulário pode ser encontrado no URL do navegador quando você edita um formulário. O ID segue a parte /edit/ do URL. O ID do formulário pode ser encontrado no URL do navegador quando você abre um formulário no designer de formulários moderno.

No designer de formulários clássico, o ID do formulário segue a parte formId%3d do URL.

Comportamento do componente de formulário

Esta seção descreve o comportamento do componente de formulário quando usado em um aplicativo baseado em modelos.

Seleção de registros

Para que o controle de componente de formulário mostre um formulário, a coluna de pesquisa à qual ele está vinculado deve ter um valor. Caso contrário, o controle mostrará a mensagem Registro de origem não selecionado. Uma maneira de definir o valor é adicionar ao formulário um controle de pesquisa que esteja vinculado à mesma coluna de pesquisa do controle de componente de formulário. Quando você usa o controle de pesquisa para alterar o valor da coluna de pesquisa, o controle de componente de formulário mostra um formulário com os dados para o novo valor da coluna de pesquisa.

Validação de coluna

Todas as colunas, tanto no formulário principal quanto nos controles de componentes do formulário, devem ser válidas para que os dados sejam enviados para o Microsoft Dataverse. Isso é verdadeiro para erros de validação de coluna, colunas obrigatórias ausentes e assim por diante.

Os manipuladores OnSave são executados para o formulário principal e seus controles de componente de formulário. Qualquer manipulador pode cancelar o salvamento do formulário principal e dos controles do componente de formulário usando preventDefault. Isso significa que nenhuma operação de salvamento pode chamar preventDefault para que os dados sejam enviados no Dataverse. A ordem de quando os manipuladores OnSave são chamados não está definida. Mais Informações: Evento OnSave de formulário (referência de API do cliente) em aplicativos baseados em modelos

Salvar registro

Quando o estágio de validação é aprovado, os dados são enviados para o Dataverse para cada registro. Atualmente, cada registro é atualizado de forma independente com diferentes solicitações. Os salvamentos não são transacionais e a ordem dos salvamentos não está definida. Um erro ao salvar um componente do formulário não reverterá as alterações no formulário principal ou em outros componentes de formulário. Após a conclusão de cada salvamento, os dados são atualizados para todos os registros no formulário.

Notificações

As notificações no componente de formulário são agregadas às notificações do formulário principal. Por exemplo, se houver colunas inválidas no componente de formulário e você tentar salvar, a notificação da coluna inválida aparecerá na parte superior do formulário principal, e não no componente de formulário.

Tratamento de erros

Se houver vários erros durante o salvamento, apenas um erro será mostrado ao usuário. Se o usuário puder fazer alterações para corrigir o primeiro erro e salvar, o próximo erro ficará visível. O usuário precisará continuar salvando até que todos os erros sejam resolvidos.

Alteração de registros com alterações não salvas

Se houver alterações não salvas em um formulário para um componente de formulário e um usuário tentar alterar a coluna de pesquisa à qual o componente de formulário está vinculado, o usuário será alertado sobre essa alteração.

API de cliente

Um contexto do formulário está disponível para o controle de componente de formulário. Ele pode ser acessado por meio do contexto de formulário do formulário principal, acessando o controle por meio de uma API, como getControl. Antes de acessar os dados da tabela relacionada no controle de componente de formulário, os manipuladores de eventos devem esperar pela isLoaded API para que o controle retorne verdadeiro.

Limitações

Observe as seguintes limitações ao adicionar o controle de componente de formulário a um formulário de tabela:

  • O controle de componente de formulário permite apenas a renderização de formulários principais. Da mesma forma, o suporte para adicionar um controle de componente de formulário só é compatível com os formulários principais. Outros tipos de formulário, como o de criação rápida, visualização rápida e cartão não são compatíveis.

  • Formulários com um fluxo do processo empresarial atualmente não têm suporte no formulário de tabela principal ou no formulário de tabela relacionado. Se você tiver um formulário com um fluxo do processo empresarial, poderá haver um comportamento inesperado. Recomendamos que você não use um componente de formulário com um formulário que use um fluxo do processo empresarial.

  • O controle de componente de formulário não é compatível com controles de componente de formulário incorporados, como adicionar um controle de componente de formulário a um formulário que é usado por um controle de componente de formulário.

  • O controle do componente de formulário não é compatível com aplicativos de tela incorporados. Você pode encontrar um comportamento inesperado com esses aplicativos de tela.

  • O controle de componente de formulário só exibirá a primeira guia do formulário que ele usa se várias guias estiverem incluídas nesse formulário.

  • Não há suporte para o uso do mesmo formulário para diferentes controles de componentes de formulário.

  • O formulário que você usa com um componente de formulário deve estar incluído no aplicativo. Se não for, ou se o usuário atual não tiver acesso ao formulário, ele retornará ao formulário principal superior incluído no aplicativo e disponível para o usuário (com base na ordem do formulário).

  • Todos os componentes usados pelo formulário em um componente de formulário devem estar incluídos no aplicativo. Entre esses componentes estão tabelas, exibições e fluxos de processo empresarial relacionados. Se não estiverem, eles não estarão disponíveis no formulário ou talvez haja um comportamento inesperado.

  • Os controles de componente do formulário têm determinadas limitações quando renderizados em aplicativos multissessão. Se a API do cliente for usada para modificar o controle de componente do formulário ou se os dados forem inseridos no formulário, as alterações podem não ser mantidas ao alternar as guias de várias sessões.

  • Convém notar que o mural da linha do tempo não é atualizado quando uma coluna é usada para definir o mural da linha do tempo tiver sido alterada no componente de formulário. Quando a página for atualizada, a parede da linha do tempo será atualizada conforme o esperado.

  • No celular, o controle da linha do tempo não aparece no controle de componente do formulário no momento.

  • Nas subgrades, os botões de comando Ver todos os registros e Ver registros associados não estarão disponíveis se forem renderizados em um componente de formulário.

  • Não há suporte aos controles de componente de formulário nas caixas de diálogo de edição em massa. Eles não aparecerão no formulário na caixa de diálogo de edição em massa por padrão e quaisquer alterações feitas nos registros de tabela relacionados a eles não serão salvas.

Confira também

Usar controles personalizados para visualizações de dados do aplicativo baseado em modelo

Observação

Você pode nos falar mais sobre suas preferências de idioma para documentação? Faça uma pesquisa rápida. (Observe que esta pesquisa está em inglês)

A pesquisa levará cerca de sete minutos. Nenhum dado pessoal é coletado (política de privacidade).