Configurar um relacionamento da tabela virtual
As tabelas virtuais são habilitadas para relacionamentos. Você pode configurar relacionamentos 1:N, N:1 e de várias tabelas personalizadas (polimórficas). Os relacionamentos podem ser estabelecidos entre:
- Tabelas locais no Dataverse e tabelas virtuais.
- Tabelas virtuais e outras tabelas virtuais do mesmo provedor, por exemplo SQL->SQL.
Por exemplo, não é possível configurar um relacionamento entre uma tabela virtual criada usando o provedor de tabela virtual OData e uma tabela virtual criada usando o provedor de conector virtual.
Definir relacionamentos em tabelas virtuais
As tabelas virtuais criadas usando o provedor de conector virtual criam automaticamente todas as colunas representadas na tabela de origem externa. Isso também incluirá colunas nas quais os relacionamentos são definidos. No entanto, a definição de relacionamento não será criada automaticamente. Você terá que definir esse relacionamento no Dataverse manualmente.
O exemplo a seguir cria um relacionamento N:1 entre uma tabela virtual (Solicitação de serviço) e uma tabela nativa (Conta). A coluna usada para configurar o relacionamento é AccountId. Essa coluna é a chave primária na tabela de contas e é uma chave estrangeira na tabela de solicitações de serviço.
Veja abaixo uma representação da tabela virtual Solicitação de serviço. Você notará que a coluna AccountId, que é a coluna usada para relacionamento na fonte externa, é do tipo Várias linhas de texto. Você precisa ter esta coluna representada como um tipo Pesquisa para criar um relacionamento.
Vá para Configurações avançadas > Configurações > Personalização e selecione Personalizar o Sistema.
No painel de navegação esquerdo, expanda a vista Entidades e navegue até a definição de Solicitação de serviço da tabela virtual.
Selecione a vista Campos, selecione a coluna AccountId e então selecione Excluir.
Escolha Excluir para confirmar a exclusão desta coluna.
Para criar o relacionamento, selecione o Relacionamento N:1 dentro da tabela Solicitação de serviço.
Selecione Novo Relacionamento Muitos-para-Um.
Digite os seguintes detalhes para criar o relacionamento entre a tabela virtual a tabela virtual Solicitação de serviço e a tabela Conta.
- Na seção Definição de relacionamento - definir o valor da coluna Entidade Primária como Conta.
- Opcionalmente, se você quiser editar o nome do relacionamento, poderá fazê-lo na coluna Nome.
- Na seção Campo Pesquisa, defina o Nome de Exibição como Conta.
- A coluna Nome é preenchida automaticamente com o nome da coluna de pesquisa.
- Defina o valor Nome externo como AccountId (correspondendo ao nome da coluna em sua tabela de origem).
Salve e, em seguida, feche o relacionamento.
Consulte as colunas da tabela virtual Solicitação de serviço; você verá que a coluna AccountId é do tipo Pesquisa. Essa coluna agora pode ser adicionada a formulários e vistas para ver todas as contas associadas a cada registro de solicitação de serviço.
Com o relacionamento estabelecido, agora você pode criar uma nova solicitação de serviço e escolher contas para associá-los.
Observação
Você terá que editar os formulários e visualizações desta tabela para incluir a coluna de pesquisa e outras colunas necessárias antes da operação na tabela virtual.
Dica
- A coluna Chave primária deve ser incluída no formulário de criação se você não configurou a coluna para incrementar automaticamente durante o design da tabela de origem subjacente. Você terá que inserir um valor válido na coluna de chave primária para que uma operação de inserção seja bem-sucedida.
Próximas etapas
Criar tabelas virtuais usando o provedor de conectores virtuais (versão preliminar)