Compartilhar via


Conectar-se ao Microsoft Dataverse

Armazene com segurança seus dados comerciais no Dataverse e crie aplicativos avançados no Power Apps para que os usuários possam gerenciar esses dados. Você também pode integrar esses dados a soluções que incluem Power Automate, Power BI e dados do Dynamics 365.

Por padrão, o aplicativo se conecta ao ambiente atual para tabelas do Dataverse. Se o aplicativo for movido para outro ambiente, o conector se conectará aos dados no novo ambiente. Esse comportamento funciona bem para um aplicativo que usa um único ambiente ou segue um processo de ALM (gerenciamento de ciclo de vida do aplicativo) para migrar do desenvolvimento, para o teste e, em seguida, para a produção.

Ao adicionar dados do Dataverse, altere o ambiente e selecione uma ou mais tabelas. Por padrão, o aplicativo se conecta aos dados no ambiente atual.

Ambiente padrão.

Se você selecionar Alterar ambiente, especifique um ambiente diferente para efetuar pull de dados em vez de, ou além do ambiente atual.

Outros ambientes.

O nome do ambiente selecionado aparece na lista de tabelas.

Novos ambientes.

Visibilidade e acesso

Ao selecionar Alterar ambiente, você verá uma lista de ambientes. Mesmo que você veja um ambiente na lista, as funções de segurança no ambiente controlam o que você pode fazer lá. Por exemplo, se você não tiver privilégios de leitura, não poderá ver as tabelas e registros no ambiente.

Observação

As conexões listadas no painel de detalhes do aplicativo fora do designer de aplicativo mostram conexões que precisam do consentimento do usuário. Como as conexões nativas do Dataverse usadas no aplicativo não precisam de consentimento adicional, uma conexão nativa não está nessa lista.

Mapeamento de tipo de dados do Power Apps

O conector do Microsoft Dataverse é mais robusto que o conector do Dynamics 365 e está se aproximando da paridade de recursos. A tabela a seguir lista os tipos de dados no Power Apps e como eles são mapeados para tipos de dados no Dataverse.

Power Apps Microsoft Dataverse
Opção Opção, Sim/Não
DateTime Data Hora, Data e Hora, Somente Data
Imagem Imagem
Número Número de Ponto Flutuante, Moeda, Número Decimal, Duração, Idioma, TimeZone, Número Inteiro
Texto Email, Texto Multilinha, Telefone, Texto, Área de Texto, Símbolo de Ticker, URL
GUID Identificador Exclusivo

Funções e operações delegáveis do Power Apps para o Dataverse

Essas operações do Power Apps, para um determinado tipo de dados, podem ser delegadas ao Dataverse para processamento em vez de serem processadas localmente no Power Apps.

Item Número [1] Texto[2] Opção DateTime [3] GUID
<, <=, >, >= Sim Sim No Sim -
=, <> Sim Sim Sim Sim Sim
And/Or/Not Sim Sim Sim Sim Sim
CountRows [4] [5], CountIf [6] Sim Sim Sim Sim Sim
Filtro Sim Sim Sim Sim Sim
Primeiro [7] Sim Sim Sim Sim Sim
In (associação) [8] Sim Sim Sim Sim Sim
Em (substring) - Sim - - -
IsBlank [9] Sim Sim No Sim Sim
Pesquisar Sim Sim Sim Sim Sim
Pesquisa No Sim No No -
Classificar Sim Sim Sim Sim -
SortByColumns Sim Sim Sim Sim -
StartsWith - Sim - - -
Sum, Min, Max, Avg [6] Sim - - No -
UpdateIf/RemoveIf [10] Sim - - No -

Anotações

  1. Numéricos com expressões aritméticas (por exemplo, Filter(table, field + 10 > 100)) não são delegadas. Idioma e TimeZone não são delegáveis. Não há suporte para a conversão de uma coluna em um número. Se um valor aparecer como um número no Power Apps, mas a fonte de dados de back-end não for um número simples, como moeda, ele não será delegado.
  2. Não há suporte a Trim[Ends] ou Len. Dá suporte a outras funções como Esquerda, Médio, Direito, Superior, Inferior, Substituir e Substituir. Além disso, não há suporte para conversão de texto(coluna) para delegação.
  3. DateTime é delegável, exceto para as funções DateTime Now() e Today().
  4. CountRows no Dataverse usa um valor em cache. Para valores não armazenados em cache em que a contagem de registros esteja abaixo de 50.000 registros, use CountIf(table, True).
  5. Para CountRows, certifique-se de que os usuários tenham as permissões apropriadas para obter os valores totais da tabela.
  6. Todas as funções de agregação são limitadas a uma coleção de 50.000 linhas. Se necessário, use a função Filtrar para selecionar 50.000 linhas. Não há suporte para funções de agregação em exibições.
  7. Não há suporte para a função FirstN.
  8. O In operador está sujeito ao limite de consulta de 15 tabelas do Dataverse.
  9. Oferece suporte a comparações. Por exemplo, Filter(TableName, MyCol = Blank()).
  10. UpdateIf e RemoveIf funcionam localmente, mas simulam a delegação para um limite de 500 ou 2.000 registros. Eles sucessivamente derrubam registros além do limite de registros de nondelegation 500 ou 2.000. Os registros que atendem à condição If são coletados. Geralmente, um máximo de 500 ou 2.000 registros são coletados separadamente e alterados por execução. No entanto, mais registros poderão ser atualizados se o cache de dados local existente for grande porque a função pode acessar mais registros para avaliação.

Chamar diretamente ações do Dataverse no Power Fx

Como parte da linguagem Power Fx, agora você pode invocar diretamente uma ação do Dataverse dentro de uma fórmula. Há suporte a ações vinculadas e desvinculadas. Adicione um objeto de linguagem Power Fx Environment ao seu aplicativo para usar ações do Dataverse.

Você pode trabalhar com campos dinâmicos para entradas e saídas. Para entradas, muitas ações do Dataverse exigem um valor dinâmico como argumento. Passe esses argumentos usando ParseJSON para converter um registro do Power Fx em um valor dinâmico. Para saídas, se uma ação retornar valores dinâmicos, basta usar a notação de ponto para acessar as propriedades do objeto. Converta valores específicos para uso no Power Apps, como em um rótulo.

Antes desse recurso, você costumava usar o Power Automate para chamar o Dataverse diretamente. Chamar o Dataverse do Power Fx oferece benefícios de desempenho significativos e é mais fácil de usar, portanto, use essa abordagem para leituras e atualizações transacionais diretas. Se seu aplicativo usar o Power Automate para chamar ações do Dataverse, você verá uma faixa sugerindo que você use essa abordagem de ação direta.

Trabalhar com campos dinâmicos não se limita ao Dataverse. Esse recurso funciona com todos os tipos de conectores e fornece suporte básico a esquema dinâmico ad hoc.

Observação

  1. As ações de DV não têm suporte total no comando do Power Fx (para qualquer chamada de ação com parâmetros).
  2. Não há suporte para referências diretas a uma entidade ou coleções de entidades.
  3. Para parâmetros do tipo de objeto aninhados com dois ou mais níveis de profundidade, o Power Apps trata os atributos de segundo nível conforme necessário.

Permitir acesso a ações do Microsoft Dataverse

Para aplicativos novos, esse recurso é habilitado automaticamente. Para aplicativos criados anteriormente, habilite o acesso às ações do Dataverse.

Para aplicativos mais antigos, abra seu aplicativo de tela para edição. Vá para Configuraçõesdos próximos recursos>desativados> e habilite as ações do Dataverse.

Adicionar o objeto de linguagem Power Fx Environment ao aplicativo

Para usar ações do Dataverse em suas fórmulas do Power Fx, selecione Adicionar dados, pesquise o Ambiente e adicione-os ao seu aplicativo.

Captura de tela da pesquisa do objeto Ambiente do Power Fx no painel Adicionar dados.

Esta etapa adiciona o objeto de linguagem Power Fx Environment ao seu aplicativo.

Captura de tela do objeto Power Fx Environment como uma fonte de dados no aplicativo.

Acessar ações do Dataverse

Depois de adicionar o objeto Power Fx Environment ao seu aplicativo, acesse as ações do Dataverse adicionando Environment à fórmula e, em seguida, usando a notação de ponto para as ações.

Captura de tela do uso do objeto Power Fx Environment em uma fórmula.

As ações não relacionadas do Dataverse estão no mesmo nível que as tabelas e precisam do escopo pai do objeto de linguagem de ambiente . Todas as ações em seu ambiente estão disponíveis, tanto o sistema quanto o personalizado. Ações vinculadas e desvinculadas estão disponíveis. O limite de chamada de dois níveis é removido.

Captura de tela do uso de uma ação do Dataverse conectada a um botão.

Para obter mais detalhes sobre como usar ações do Dataverse em suas fórmulas, consulte Trabalhando com valores dinâmicos.

Passar argumentos de tipo de entidade para ações associadas e não associadas

Para passar argumentos de tipo de entidade para ações do Dataverse, defina o valor do argumento de tipo de entidade como uma variável. Preencha todos os valores ausentes, como *activityId. Essa etapa é importante para entidades que não têm tipos definidos no swagger.

Set(MyArgVar, {
  name: First(systemUser).name,
  Id: First(systemUser).Id
  ... })

Renomear, atualizar e usar ações em outros ambientes

Para renomear um Ambiente, selecione as reticências e selecione "Renomear". Se você adicionar uma nova ação do Dataverse no Dataverse e quiser que o Power Apps a veja, selecione "Atualizar". Para usar uma ação em um ambiente diferente, altere o ambiente, pesquise por 'Ambiente', selecione-o e adicione-o ao seu aplicativo.