Partilhar via


Ligar ao Microsoft Dataverse

Pode armazenar de forma segura os seus dados de negócio no Dataverse e criar aplicações ricas no Power Apps para que os utilizadores possam gerir esses dados. Também pode integrar esses dados em soluções que incluem Power Automate, Power BI e os dados do Dynamics 365.

Por predefinição, a aplicação conecta-se ao ambiente atual para tabelas Dataverse. Se a sua aplicação mudar para outro ambiente, o conector é ligado aos dados no novo ambiente. Este comportamento funciona bem para uma aplicação que utiliza um único ambiente ou uma aplicação que segue um processo de gestão do ciclo de vida da aplicação (ALM) para mudar de desenvolvimento para teste e, em seguida, para produção.

Quando adiciona dados do Dataverse, pode alterar o ambiente e, em seguida, selecionar uma ou mais tabelas. Por predefinição, a aplicação liga-se aos dados no ambiente atual.

Ambiente predefinido.

Se selecionar Alterar ambiente, pode especificar um ambiente diferente para daí solicitar dados em vez de (ou adicionalmente) ao ambiente atual.

Outros ambientes.

O nome do ambiente selecionado aparece abaixo da lista de tabelas.

Novos ambientes.

Visibilidade e acesso

Quando seleciona Alterar ambiente, é-lhe apresentada uma lista de ambientes. Apesar de poder ver um ambiente na lista, as funções de segurança no ambiente governam o que pode fazer nesse ambiente. Por exemplo, se não tem privilégios de leitura, não pode ver as tabelas e registos no ambiente.

Nota

As ligações listadas no painel de detalhes da aplicação fora do estruturador de aplicações mostram ligações que necessitam do consentimento do utilizador. Uma vez que as ligações do Dataverse usadas na aplicação não exigem consentimento adicional, uma ligação nativa não estará nessa lista.

Mapeamento do tipo de dados nas Power Apps

O conector do Microsoft Dataverse é mais robusto do que o Dynamics 365 Connector e aproxima-se da paridade de funcionalidades. A tabela que se segue lista os tipos de dados em Power Apps, e como eles mapeiam para tipos de dados em Dataverse.

Power Apps Microsoft Dataverse
Opção Escolha, Sim/Não
DateTime Data Hora, Data e Hora, Apenas Data
Imagem Imagem
Número Número de vírgula flutuante, moeda, número decimal, duração, linguagem, zona horária, número inteiro
Texto E-mail, Texto com várias linhas, Telefone, Texto, Área de Texto, Símbolo do Ticker, URL
GUID Identificador Exclusivo

funções e operações Power Apps delegáveis para Dataverse

Estas operações do Power Apps, para um determinado tipo de dados, poderão ser delegadas para o Dataverse para processamento (em vez de serem processadas localmente dentro do Power Apps).

Item Número [1] Texto [2] Opção DateTime [3] Guid
<, <=, >, >= Sim Sim No Sim -
=, <> Sim Sim Sim Sim Sim
E/Ou/Não 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
Em (associação) [8] Sim Sim Sim Sim Sim
Em (subcadeia) - Sim - - -
IsBlank [9] Sim Sim No Sim Sim
Procura Sim Sim Sim Sim Sim
Pesquisar Não Sim Não Não -
Ordenação Sim Sim Sim Sim -
SortByColumns Sim Sim Sim Sim -
StartsWith - Sim - - -
Soma, Mín., Máx., Média [6] Sim - - Não -
  1. Numéricas com expressões aritméticas (por exemplo, Filter(table, field + 10 > 100) ) não são delegáveis. O idioma e o fuso horário não são delegáveis. O valor de uma coluna para um número não é suportado. Quando um valor aparece como um número no Power Apps, mas a origem de dados de back-end não é um número simples, como a moeda, não é delegado.
  2. Não suporta Trim[Ends] ou Len. Suporta outras funções, como Esquerda, Centro, Direita, Superior, Inferior, Substituir, Substituto, etc. Além disso, o valor de Texto(coluna) não é suportado para delegação.
  3. DateTime é delegável, exceto para funções DateTime Now() e Today().
  4. CountRows em Dataverse utiliza um valor em cache. Para valores não em cache onde a contagem de registos é esperada que seja inferior a 50.000 registos, utilize CountIf(table, True).
  5. Para CountRows, certifique-se de que os utilizadores têm as permissões adequadas para obter os totais da tabela.
  6. As funções de agregação estão limitadas a uma coleção de 50 mil linhas. Se necessário, utilize a função Filtro para selecionar 50.000. As funções de agregação não são suportadas em Vistas.
  7. FirstN não é suportada.
  8. In está sujeito ao limite de consulta de 15 tabelas do Dataverse.
  9. Suporta comparações. Por exemplo, Filter(TableName, MyCol = Blank()).

Chamar ações do Dataverse diretamente no Power Fx

Como parte da linguagem do Power Fx, os autores podem agora invocar diretamente uma ação do Dataverse dentro de uma fórmula. São suportadas ações dependentes e independentes. Os autores podem adicionar um objeto de linguagem do Environment do Power Fx à sua aplicação e aceder a ações do Dataverse.

Os autores podem trabalhar com campos de objeto sem tipo para entradas e saídas. Do lado da entrada, por exemplo, muitas ações do Dataverse requerem um objeto sem tipo como argumento. Os autores podem agora transmitir estes argumentos usando ParseJSON para converter um registo do Power Fx num objeto sem tipo. No lado de saída, para ações que devolvam objetos sem tipo, pode simplesmente colocar dot nas propriedades de objetos devolvidos. Tem de converter valores específicos para utilização em contextos específicos para utilização no Power Apps, como uma etiqueta.

Sem esta caraterística, era comum os autores usarem o Power Automate para chamar o Dataverse diretamente. No entanto, ligar diretamente o Dataverse a partir do Power Fx fornece vantagens significativas de desempenho (e uma facilidade de utilização) e deverá ser a preferida para leituras e atualizações transacionais diretas. Se você tiver um aplicativo que usa Power Automate para chamar Dataverse ações, verá um banner sugerindo que você use essa abordagem de ação direta.

Trabalhar com campos sem tipo não está restrito ao Dataverse. Funciona para todos os tipos de conectores e fornece suporte básico de esquema dinâmico ad-hoc.

Nota

  1. Não suportamos totalmente as ações de DV nos comandos do Power Fx (específico para qualquer chamada de ação com parâmetros).
  2. Não suportamos referências diretas a uma Entidade ou coleções de Entidades.
  3. Para parâmetros do tipo objeto que estão aninhados (2 ou mais níveis de profundidade), os atributos de segundo nível são tratados como obrigatórios no PowerApps.

Permitir acesso a ações do Microsoft Dataverse

Para novas aplicações, esta caraterística é ativada automaticamente. Para aplicações criadas anteriormente, tem de ativar o acesso a ações do Dataverse.

Para aplicações mais antigas, abra a sua aplicação de tela para edição e navegue até Configurações>Próximos recursos>Extinto e ativar ações do Dataverse.

Adicionar o objeto da linguagem do Ambiente Power Fx à aplicação

Para utilizar ações do Dataverse nas fórmulas do Power Fx, selecione Adicionar dados e procure Ambiente e adicione-o à aplicação.

Procurar o objeto do Ambiente Power Fx.

Isto adiciona o objeto do Power Fx Environment à aplicação.

O objeto do Ambiente Power Fx como origem de dados

Aceder a ações do Dataverse

Quando o objeto do Power Fx Environment é adicionado à aplicação, pode aceder a ações do Dataverse ao adicionar Environment à fórmula e, em seguida, colocando pontos nas ações.

Utilizar o objeto do Ambiente Power Fx.

As ações não vinculadas do Dataverse são por nível para tabelas e necessitam do âmbito de hierarquização do objeto da linguagem de Ambiente. Todas as ações no seu ambiente estão disponíveis – tanto a nível do sistema, como personalizadas. Estão disponíveis ações dependentes e independentes. O limite de chamadas de 2 níveis foi removido.

Utilizar uma ação do Dataverse.

Para mais detalhes sobre como utilizar ações do Dataverse nas fórmulas, consulte Trabalhar com objetos dinâmicos e sem tipo.

Passando argumentos de tipo de entidade para ações vinculadas/não acopladas

Para transmitir argumentos de tipo de entidade para ações do Dataverse, comece por definir o valor do argumento de tipo de entidade como uma variável. Além disso, certifique-se de que todos os valores ausentes, como *activityId , sejam preenchidos. Isto é particularmente 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 ações noutros ambientes

Pode renomear um Ambiente escolhendo as reticências e selecionando "Renomear". Se adicionar uma nova ação do Dataverse no Dataverse e precisar do Power Apps para a ver, poderá escolher "Atualizar". E, se precisar de usar uma ação num ambiente diferente, primeiro precisa de alterar o ambiente e quando lá estiver, procure por 'Ambiente', selecione e adicione-o à sua aplicação.