Criar e editar tabelas virtuais que contenham dados de uma fonte de dados externa

Uma tabela virtual é uma tabela personalizada no Microsoft Dataverse que tem colunas com dados de uma fonte de dados externa. As tabelas virtuais aparecem no aplicativo para usuários como linhas de tabela regulares, mas contêm dados originários de um banco de dados externo, como um Banco de Dados SQL do Azure. As linhas baseadas em tabelas virtuais estão disponíveis em todos os clientes, incluindo os clientes personalizados desenvolvidos usando os serviços Web do Dataverse.

No passado, para integrar as fontes de dados díspares, você precisaria criar um conector para mover os dados ou desenvolver um plug-in personalizado, no cliente ou no servidor. No entanto, com as tabelas virtuais, você pode se conectar diretamente a uma fonte de dados externa em tempo de execução de forma que os dados específicos da fonte de dados externa sejam disponibilizados em um ambiente, dispensando a replicação de dados.

As tabelas virtuais são compostas de até três componentes principais, um provedor de dados, uma linha de fonte de dados e uma tabela virtual. O provedor de dados consiste em plug-ins e em uma tabela de fonte de dados. A fonte de dados é uma linha de tabela no Dataverse, que inclui metadados que representam o esquema dos parâmetros de conexão. Cada tabela virtual faz referência a uma fonte de dados na definição da tabela.

O Dataverse inclui um Provedor de Dados OData que pode ser usado para a conexão com o serviço Web OData v4 que acessa os dados externos.

Como alternativa, os desenvolvedores podem criar seus próprios provedores de dados. Os provedores de dados são instalados em um ambiente como uma solução. Mais informações: Documentação do desenvolvedor: introdução às tabelas virtuais

Benefícios da tabela virtual

  • Os desenvolvedores podem implementar plug-ins para ler, atualizar ou excluir dados externos usando os serviços Web e a ferramenta de Registro de Plug-ins do Dataverse.
  • Os personalizadores de sistema usam o gerenciador de soluções Power Apps para configurar a linha da fonte de dados e criar tabelas virtuais usadas para acessar dados externos sem escrever código.
  • Usuários finais trabalham com as linhas criadas pela tabela virtual para exibir os dados em colunas, grades, resultados de pesquisa, e em relatórios e painéis baseados em Fetch XML.

Adicionar uma fonte de dados a ser usada com tabelas virtuais

Os desenvolvedores criam um plug-in personalizado a ser usado como o provedor de dados para uma tabela virtual. Como alternativa, você pode usar o Provedor de Dados OData v4 fornecido. Mais informações: Configuração, requisitos e práticas recomendadas do Provedor de Dados OData v4

  1. Entre no Power Apps e selecione Configurações > Configurações avançadas.

  2. Vá para Configurações > Administração > Fontes de Dados da Entidade Virtual.

  3. Na barra de ferramentas de ações, selecione Novo.

  4. Na caixa de diálogo Selecionar Provedor de Dados, selecione uma das fontes de dados a seguir e OK.

    Provedor de Dados Descrição
    Provedor de dados personalizado Se você tiver importado um plug-in de provedor de dados, o provedor de dados aparecerá aqui. Mais informações: Documentação do desenvolvedor: introdução às tabelas virtuais
    Provedor de Dados OData v4 O Dataverse inclui um Provedor de Dados OData que pode ser usado com serviços Web do OData v4. Mais informações: Configuração, requisitos e práticas recomendadas do Provedor de Dados OData v4

Adicionar uma coluna protegida a uma Fonte de Dados

Você cria colunas para uma Fonte de Dados como faz para qualquer outra tabela. Para os dados criptografados ou confidenciais, habilite o atributo Segredo da Fonte de Dados na coluna personalizada da Fonte de Dados. Por exemplo, para proteger uma coluna contendo uma cadeia de conexão do banco de dados.

Observação

O atributo Segredo da Fonte de Dados está disponível apenas com colunas adicionadas a um formulário da fonte de dados.

Atributo segredo da fonte de dados.

Criar uma tabela virtual

Você cria uma tabela virtual da mesma forma que qualquer outra tabela no Dataverse, com a adição de alguns atributos extras descritos aqui. Tabelas virtuais devem ser criadas usando o gerenciador de soluções.

Observação

Embora você possa criar uma tabela virtual selecionando Nenhum como a fonte de dados, a aquisição de uma tabela virtual exige uma fonte de dados. Mais informações: Adicionar uma fonte de dados a ser usada com tabelas virtuais

Abra o gerenciador de soluções

Parte do nome de qualquer tabela virtual criada é o prefixo de personalização. Isso é definido com base no fornecedor da solução para a solução que você está trabalhando. Se o prefixo de personalização for importante, verifique se você está trabalhando em uma solução não gerenciada em que o prefixo de personalização seja o que você deseja para essa tabela virtual. Mais informações: Alteração do prefixo do fornecedor de soluções.

Abrir uma solução não gerenciada

  1. Em Power Apps, selecione Soluções na barra de ferramentas esquerda e, em seguida, na barra de ferramentas, selecione Alternar para clássico. Se o item não estiver no painel lateral, selecione …Mais e selecione o item desejado.

  2. Na lista Todas as Soluções, selecione a solução não gerenciada que você deseja.

Criar uma tabela virtual

  1. No gerenciador de soluções, crie uma nova tabela. Para fazer isso, selecione Entidades no painel de navegação esquerdo e, depois, Novo.

  2. Na guia Geral da Definição de Entidade, selecione Entidade Virtual e, na lista suspensa Fonte de Dados, selecione a fonte de dados desejada.

    Opção de tabela virtual na definição de tabela.

  3. Na Definição da Entidade, preencha as colunas necessárias a seguir.

    Campo Descrição
    Nome Externo Insira o nome da tabela na fonte de dados externa para a qual essa tabela é mapeada.
    Nome da Coleção Externa Insira o nome plural da tabela na fonte de dados externa para a qual essa tabela é mapeada.

    Veja um exemplo de uma tabela virtual chamada Filme que usa um provedor de dados do Azure Cosmos DB para acessar arquivos de documentos.

    Definição de tabela virtual usando o provedor de dados Azure Cosmos DB.

    Importante

    Várias opções, como Equipes de Acesso, Filas e Criação Rápida, não estão disponíveis com tabelas virtuais. Mais informações: Considerações ao usar tabelas virtuais

    Preencha as propriedades opcionais e obrigatórias adicionais, como os nomes de exibição e no plural, conforme o necessário. Para obter mais informações sobre estas propriedades, consulte Criar e editar tabelas.

  4. Criar e adicionar uma ou mais colunas para a tabela virtual. Além das propriedades de coluna padrão necessárias para criar uma coluna personalizada, essas propriedades opcionais estão disponíveis para cada coluna personalizada criada para uma tabela virtual.

    Campo Descrição
    Nome Externo Esse é geralmente o nome exclusivo para identificar os dados que você deseja exibir na coluna.
    Nome de Tipo Externo Se o tipo de coluna criada for OptionSet: essa propriedade será mapeada para o nome externo do conjunto de valores no serviço externo da opção. Normalmente, isso pode ser uma enumeração ou um nome de uma classe de valor de cadeia de caracteres. O Nome do Tipo Externo pode ser usado quando o nome totalmente qualificado for necessário. Por exemplo, como o Nome do Tipo com OData onde os parâmetros em uma consulta precisam do nome totalmente qualificado,como [Nome do Tipo].[Valor].
    Valor Externo Se o tipo de coluna criada for OptionSet: essa propriedade será mapeada para o valor correspondente na fonte de dados externa do item da opção. O valor inserido é usado para determinar qual item de opção será exibido no aplicativo.

    Preencha as propriedades adicionais como necessário. Para obter mais informações sobre estas propriedades, consulte Criar e editar colunas.

  5. Selecione Salvar e Fechar na página de propriedades Coluna.

  6. Na barra de ferramentas do gerenciador de soluções, selecione Salvar.

  7. Na barra de ferramentas do gerenciador de soluções, selecione Publicar.

  8. Feche o gerenciador de soluções.

Considerações ao usar tabelas virtuais

As tabelas virtuais têm estas restrições.

  • As tabelas existentes não podem ser convertidas em tabelas virtuais.
  • Por padrão, as tabelas virtuais contêm somente uma coluna Nome e Id. Não há suporte a outras colunas gerenciadas pelo sistema, como Status ou Criado em/Modificado em.
  • As tabelas virtuais não oferecem suporte a colunas personalizadas com os tipos de dados de Moeda, Imagem ou Cliente.
  • As tabelas virtuais não oferecem suporte à auditoria.
  • As colunas da tabela virtual não podem ser usadas em colunas acumuladas ou calculados.
  • Uma tabela virtual não pode ser um tipo de atividade de tabela.
  • Painéis e gráficos não são compatíveis com tabelas virtuais.
  • Muitos recursos que afetam linhas da tabela não podem ser habilitados com tabelas virtuais. Os exemplos incluem filas, gerenciamento de conhecimento, SLAs, detecção de duplicidades, controle de alterações, capacidade offline móvel, segurança de coluna, pesquisa do Dataverse e soluções do Power Pages.
  • As tabelas virtuais são propriedade da organização e não são compatíveis com os conceitos de segurança do Dataverse em nível de linha. É recomendável que você implemente o seu próprio modelo de segurança para a fonte de dados externa.
  • As propriedades de metadados de coluna que validam a atualização não se aplicam a tabelas virtuais. Por exemplo, uma coluna Número Inteiro em uma coluna de tabela virtual pode ser definida com um valor mínimo de zero. No entanto, como o valor é obtido de uma fonte de dados externa, uma consulta retornará valores menores que zero quando recuperados de uma tabela virtual. A propriedade de valor mínimo não é implícita na consulta. Se desejar, você ainda poderá filtrar os valores como maiores que 0.
  • As tabelas virtuais não dão suporte ao controle de alterações e não podem ser sincronizadas usando um recurso do Dataverse, como Data Export Service ou Azure Synapse Link for Dataverse.
  • As tabelas virtuais que usam o provedor de dados OData v4 incluído são habilitadas na porta de saída 443.
  • Os fluxos do processo empresarial não têm suporte com tabelas virtuais. Mais informações: Erro inesperado recebido quando um usuário ativa um fluxo do processo empresarial

Erro inesperado recebido quando um usuário ativa um fluxo do processo empresarial

Quando um usuário tenta ativar um fluxo do processo empresarial, ele pode receber uma mensagem de "erro inesperado". Visualizando o arquivo de log, a seguinte entrada de log é exibida.

ErrorCode: 0x80040216 Message: System.Web.HttpUnhandledException: Exceção do tipo 'System.Web.HttpUnhandledException' foi gerada. ---> Microsoft.Crm.CrmException: o fluxo do processo empresarial não pode ser habilitado para a Entidade Virtual

Esse problema ocorre porque as tabelas virtuais não oferecem suporte a fluxos do processo empresarial.

Confira também

Requisitos e práticas recomendadas do Provedor de Dados OData v4
Criar e editar tabelas
Configurar tabelas virtuais no Power Pages

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).