Criar um relacionamento um para muitos entre tabelas

Concluído

Esta unidade mostra como implementar relacionamentos um para muitos no Microsoft Dataverse com as etapas a seguir.

Dica

Os relacionamentos um para muitos ou muitos para um são iguais se você estiver olhando para o relacionamento de um lado ou de outro.

Relacionamento um para muitos

  1. Entre no Power Apps maker portal

  2. Selecione o ambiente no qual você deseja trabalhar usando a lista suspensa na barra de menus superior.

  3. Selecione Tabelas no painel de navegação lateral para ver uma lista das tabelas disponíveis.

    Captura de tela de todas as Tabelas disponíveis no Dataverse.

  4. Selecione qualquer uma das tabelas nas quais você pode criar um relacionamento com outra tabela.

  5. Na tela de exibição Tabelas resultante, procure o painel Esquema e selecione os Relacionamentos para exibir os relacionamentos que a tabela tem com outras.

    Captura de tela dos Relacionamentos realçados dentro do painel Esquema.

  6. Na tela de exibição Relacionamentos, você pode ver todos os relacionamentos atuais que sua tabela tem. Você pode ter alguns que sejam Um para muitos, Muitos para um ou Muitos para muitos. Se desejar criar um novo relacionamento, selecione + Novo relacionamento na barra de comandos.

    Captura de tela do botão de Novo relacionamento mostrando os três tipos diferentes disponíveis para criação.

  7. Em seguida, você pode selecionar uma opção de relacionamento Muitos para um, um para muitos ou muitos para muitos. Neste exemplo, selecionaremos um relacionamento Um para muitos.

  8. Você verá que uma janela aparece no lado direito da tela com o nome do tipo de relacionamento que você escolheu (Um para muitos neste caso), junto com um campo suspenso para escolher a tabela relacionada.

    Dica

    Com cada opção, uma coluna de pesquisa será criada na tabela principal.

    Captura de tela do painel de relacionamento mostrando a opção suspensa para a tabela relacionada.

    O campo Tabela Relacionada (Muitos) permite escolher a tabela com a qual criar esse relacionamento.

  9. Depois de selecionar uma tabela, o Dataverse cria automaticamente uma coluna de pesquisa e tudo o que é necessário para relacionar essa tabela à tabela principal.

    Captura de tela do relacionamento concluído.

  10. Selecione Concluído para salvar o novo relacionamento.

  11. Depois de salvar o novo relacionamento, você verá que ele aparecerá na sua lista Relacionamentos.

Agora, você pode usar esse relacionamento e a pesquisa em sua solução de negócios. Uma coluna de pesquisa estará disponível para uso que mostre todas as várias linhas (filho).

Comportamentos de relacionamento um para muitos

Algumas tabelas não fazem sentido por si só e, normalmente, são criadas para dar suporte a outras tabelas e processos. Geralmente, terão uma coluna de pesquisa obrigatória para vincular à tabela primária à qual dão suporte. Por exemplo, o requisito comercial poderia ser que a linha do Projeto não existisse sem uma conta relacionada. Nesse caso, a tabela Projeto terá um relacionamento Muitos para um com a tabela Account, e a coluna de pesquisa de conta será definida como requisito comercial.

Além de definir como as linhas podem ser relacionadas a outras linhas, os relacionamentos de tabela Um para muitos também fornecem metadados para responder às seguintes perguntas:

  • Quando excluo uma linha, alguma linha relacionada a ela também deve ser excluída?

  • Quando atribuo uma linha a um novo proprietário, também preciso atribuir todas as linhas relacionadas ao novo proprietário?

  • Como posso agilizar o processo de entrada de dados ao criar uma nova linha relacionada no contexto de uma linha existente?

  • Como as pessoas que exibem uma linha podem exibir as linhas relacionadas?

Você pode usar o comportamento de relacionamento em relacionamentos um para muitos para definir como as linhas nos vários lados de um relacionamento de tabela são afetadas por operações como atribuir, compartilhar e excluir na linha pai. Os comportamentos de relacionamento são importantes, pois ajudam a garantir a integridade dos dados.

Comportamentos

Há vários tipos de comportamentos que podem ser aplicados quando ocorrem determinadas ações:

Comportamento Descrição
Todos em Cascata Executar a ação em todas as linhas da tabela relacionadas.
Ativos em Cascata Executar a ação em todas as linhas ativas da tabela relacionada.
De Propriedade do Usuário em Cascata Executar a ação em todas as linhas da tabela relacionadas pertencentes ao mesmo usuário que a linha da tabela primária.
Nenhum em Cascata Não fazer nada.
Remover Link Remover o valor de pesquisa de todas as linhas relacionadas.
Restringir Impedir que a linha da tabela primária seja excluída quando existirem linhas de tabela relacionadas.

Ações

As ações controladas por comportamentos são:

Coluna Descrição Comportamentos
Excluir O que deverá acontecer quando a linha principal da tabela for excluída? Todos em Cascata, Remover Link, Restringir
Atribuir O que deverá acontecer quando a linha principal da tabela for atribuída a outra pessoa? Todos em Cascata, Ativos em Cascata, De Propriedade do Usuário em Cascata, Nenhum em Cascata
Reassociar O que deverá acontecer quando o valor de pesquisa de uma tabela relacionada em um relacionamento parental for alterado? Todos em Cascata, Ativos em Cascata, De Propriedade do Usuário em Cascata, Nenhum em Cascata
Parcela O que deverá acontecer quando a linha primária da tabela for compartilhada? Todos em Cascata, Ativos em Cascata, De Propriedade do Usuário em Cascata, Nenhum em Cascata
Descompartilhar O que deverá acontecer quando uma linha da tabela primária não for compartilhada? Todos em Cascata, Ativos em Cascata, De Propriedade do Usuário em Cascata, Nenhum em Cascata
Mesclar O que dever;a acontecer quando uma linha primária da tabela for mesclada? Todos em Cascata, Nenhum em Cascata
Exibição de Valor Acumulado Qual é o comportamento desejado da exibição de valor acumulado associada a esse relacionamento? Todos em Cascata, Ativos em Cascata, De Propriedade do Usuário em Cascata, Nenhum em Cascata

Observação

Os comportamentos só operam em linhas relacionadas quando a ação é executada na linha pai, não para ações executadas nas linhas relacionadas ou seja, os comportamentos operam na direção um para muitos e não na direção muitos para um.

Tipos de comportamento

Para simplificar a configuração de comportamentos de relacionamento, a Microsoft agrupou os comportamentos em tipos:

Tipo Descrição
Primário Qualquer ação executada em uma linha da tabela principal também será executada nas linhas da tabela secundária relacionada.
Referencial, Exclusão Restrita É possível navegar para qualquer linha relacionada. As ações realizadas na linha pai não serão aplicadas à linha filho, mas a linha pai não poderá ser excluída enquanto a linha filho existir.
Referencial, Remover Link É possível navegar para qualquer linha relacionada, e as ações tomadas em uma não afetarão a outra. Esse é o padrão.
Personalizada O comportamento para cada ação possível pode ser selecionado.

Captura de tela da edição da coluna primária.

Mapeamentos de relacionamento um para muitos

Você pode mapear colunas entre tabelas que têm um relacionamento um para muitos. Isso permite definir valores padrão para uma linha criada no contexto de outra linha. Os mapeamentos são usados para simplificar o processo de entrada de dados quando os usuários criam uma nova linha relacionada do formulário da linha pai em um aplicativo baseado em modelo.

Por exemplo, quando uma linha de conta for aberta e um novo contato relacionado for criado, esse recurso preencherá previamente o formulário de contato com informações selecionadas da conta, como endereço do escritório, número de telefone principal etc.

Considerações sobre mapeamento:

  • É um recurso de aplicativo baseado em modelo

  • Aplica-se apenas a relacionamentos um para muitos.

  • Aplica-se somente quando uma nova linha relacionada é criada no contexto do formulário da linha pai.

  • Não aplicar se a linha relacionada for criada e vinculada selecionando uma coluna de pesquisa.

  • Os valores nas colunas da linha pai são copiados para a linha filho.

  • Somente colunas do mesmo tipo de dados podem ser mapeadas.

  • Os usuários podem substituir os valores antes de a linha ser criada.

  • A cópia dos valores ocorre apenas uma vez na criação, e nenhuma sincronização futura ocorrerá.

Observação

Use o Gerenciador de soluções clássico para configurar mapeamentos para um relacionamento.

Relacionamentos hierárquicos

Algumas tabelas padrão no Dataverse já têm hierarquias definidas, como Account. As linhas em uma hierarquia podem ser exibidas visualmente em aplicativos baseados em modelo.

Captura de tela do relacionamento hierárquico.

A opção de definir um relacionamento hierárquico está disponível apenas para relacionamentos autorreferenciais. Um relacionamento autorreferencial é um relacionamento um para muitos entre uma tabela e ela mesma, em que a mesma tabela é definida como tabela primária e tabela relacionada.

Captura de tela da criação de um relacionamento hierárquico.

Para obter mais informações sobre relacionamentos de tabela, consulte Relacionamentos de tabelas.