Compartilhar via


Criar e editar tabelas virtuais que contêm dados de uma fonte de dados externa

Uma tabela virtual é uma tabela personalizada no Microsoft Dataverse que tem colunas contendo dados de uma fonte de dados externa. As tabelas virtuais aparecem em seu aplicativo para usuários como linhas de tabela regulares, mas contêm dados provenientes 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 tabelas virtuais, você pode se conectar diretamente a uma fonte de dados externa em runtime para que dados específicos da fonte de dados externa fiquem disponíveis em um ambiente, sem a necessidade de replicação de dados.

As tabelas virtuais são compostas por 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 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 você pode usar para se conectar a um 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 do Dataverse e a ferramenta de Registro de Plug-in.
  • Os personalizadores do sistema usam o Gerenciador de Soluções do Power Apps para configurar a linha da fonte de dados e criar tabelas virtuais que são usadas para acessar dados externos sem escrever nenhum código.
  • Os usuários finais trabalham com as linhas criadas pela tabela virtual para exibir os dados em colunas, grades, resultados da pesquisa e buscar relatórios e dashboards baseados em XML.

Adicionar uma fonte de dados a ser usada para tabelas virtuais

Os desenvolvedores criam um plug-in personalizado para usar como 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 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 entre as fontes de dados a seguir e selecione OK.

    Provedor de dados Description
    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 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 da mesma forma que qualquer outra tabela. Para 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 que contém uma cadeia de conexão de banco de dados.

Observação

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

Atributo segredo da fonte de dados.

Criar uma tabela virtual

Você cria uma tabela virtual como qualquer outra tabela no Dataverse com a adição de alguns atributos extras descritos aqui. As 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, para adquirir dados, uma tabela virtual requer uma fonte de dados. Mais informações Adicionam uma fonte de dados a ser usada para 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 você se preocupa com o prefixo de personalização, verifique se está trabalhando em uma solução não gerenciada em que o prefixo de personalização é o que você deseja para esta 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 no painel de navegação esquerdo 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 da tabela.

  3. Na Definição de Entidade, conclua as seguintes colunas necessárias.

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

    Aqui está um exemplo de uma tabela virtual chamada Movie que usa um provedor de dados do Azure Cosmos DB para acessar arquivos de documento.

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

    Importante

    Várias opções, como o Access Teams, 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 essas propriedades, consulte Criar e editar tabelas.

  4. Crie e adicione 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 Description
    Nome Externo Normalmente, esse é o nome exclusivo para identificar os dados que você deseja exibir na coluna.
    Nome do 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. Esse valor inserido é usado para determinar qual item de escolha exibir no aplicativo.

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

  5. Selecione Salvar e Fechar na página de propriedades da 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 essas restrições.

  • Tabelas existentes não podem ser convertidas em tabelas virtuais.
  • Por padrão, as tabelas virtuais contêm apenas uma coluna Nome e ID. Não há suporte para nenhuma outra coluna gerenciada do sistema, como Status ou Created On/Modified On.
  • As tabelas virtuais não dão suporte a colunas personalizadas com os tipos de dados Moeda, Imagem ou Cliente.
  • As tabelas virtuais não dão suporte à auditoria.
  • Colunas de tabela virtual não podem ser usadas em rollups ou colunas calculadas.
  • Uma tabela virtual não pode ser um tipo de tabela de atividade.
  • Painéis e gráficos não são compatíveis com tabelas virtuais.
  • Muitos recursos que afetam as linhas da tabela de tabela não podem ser habilitados com tabelas virtuais. Os exemplos incluem filas, gerenciamento de conhecimento, SLAs, detecção de duplicatas, controle de alterações, capacidade móvel offline, segurança de coluna, busca do Dataverse e soluções do Power Pages.
  • As tabelas virtuais são de propriedade da organização e não dão suporte aos 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 validadas na 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 para ter um valor mínimo de zero. No entanto, como o valor vem de uma fonte de dados externa, uma consulta retornará valores inferiores a zero quando recuperada 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 o Serviço de Exportação de Dados ou o Link do Azure Synapse para Dataverse.
  • As tabelas virtuais que usam o provedor de dados OData v4 incluído estão habilitadas na porta de saída 443.
  • Não há suporte para fluxos de processo de negócios 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 dão suporte a fluxos de processo empresarial.

Consulte também

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