Trabalhar com qualquer tipo de aplicativo
O Microsoft Dataverse fornece várias maneiras de se integrar a qualquer tipo de aplicativo (móvel, web, desktop), dispositivo, sistema ou serviço. Para soluções em nuvem, existem formas de integração, independentemente do modelo em que sua solução está implantada — infraestrutura como serviço (IaaS), plataforma como serviço (PaaS) ou software como serviço (SaaS). Para soluções baseadas em IaaS, a abordagem de integração também funciona bem naquelas em execução dentro de contêineres.
Em alguns casos, a integração com um aplicativo pode ser alcançada usando a lógica de negócios contida no Dataverse. Em outros casos, ela envolverá a integração por meio de eventos, a API OData do Dataverse ou usando plug-ins.
Definição da lógica de negócios
As tabelas no Dataverse podem usar lógica e validação avançadas no servidor para garantir qualidade de dados e reduzir código repetitivo em cada aplicativo que cria e usa dados dentro de uma tabela.
Regras de negócios: valida dados entre várias colunas e tabelas e fornece mensagens de aviso e de erro, independentemente do aplicativo usado para criar os dados. Mais informações: Criar uma regra de negócios para uma tabela
Fluxos do processo empresarial: guia os usuários a garantir que eles insiram dados de forma consistente e sigam as mesmas etapas todas as vezes. Atualmente, fluxos de processo empresariais oferecem suporte apenas a aplicativos direcionados por modelo. Mais informações: Visão geral dos fluxos de processo empresarial
Fluxos de trabalho: permitem que você automatize processos empresariais sem interação de usuário. Mais informações: Fluxos de trabalho do Dataverse clássico
Lógica de negócios com código: oferece suporte a cenários de desenvolvedor avançados para estender o aplicativo diretamente por meio do código. Mais informações: Aplicar a lógica de negócios usando código
Integração com aplicativos usando eventos
Uma abordagem comum da integração de aplicativos é usar eventos. Por exemplo, um evento como adicionar uma nova linha ocorre no Dataverse, e isso deve ser comunicado a um sistema associado para que uma ação possa ser executada. Por exemplo, se uma nova solicitação de suporte foi gerada, ela pode acionar uma mensagem SMS para ser enviada à equipe de suporte atribuída.
Essa interatividade também pode ocorrer na direção oposta — uma atualização em um sistema externo pode resultar na adição, atualização ou exclusão de dados de um ambiente do Power Platform.
As abordagens mais populares no Dataverse envolvem webhooks, mensagens do Azure (Barramento de Serviço, Hubs de Eventos), Aplicativos Lógicos do Azure ou Power Automate.
Webhooks
Com o Dataverse, você pode enviar dados sobre eventos que ocorrem no serviço para um aplicativo Web usando webhooks. Um webhook é um HTTP leve para conectar APIs da Web e serviços com um modelo de publicação e inscrição. Os remetentes do Webhook notificam destinatários sobre eventos, fazendo solicitações para os pontos de extremidade dos destinatários com algumas informações sobre os eventos.
Os webhooks permitem que desenvolvedores e ISVs integrem dados do Dataverse com seu próprio código personalizado hospedado em serviços externos. O modelo de webhook permite que você proteja o ponto de extremidade usando um cabeçalho de autenticação ou chaves de parâmetros de sequência de caracteres de consulta. Isso é mais simples que a assinatura de acesso compartilhado modelo de autenticação usado com a integração do Barramento de Serviço do Azure.
Os webhooks podem ser redimensionados apenas no ponto em que o serviço Web hospedado pode processar as mensagens.
Os webhooks permitem etapas síncronas e assíncronas.
Os webhooks enviam solicitações POST com a carga JSON e podem ser usados por qualquer linguagem de programação ou aplicativo Web hospedado em qualquer lugar.
O webhooks podem ser invocados usando um plug-in ou uma atividade de fluxo de trabalho personalizada.
Barramento de Serviço do Azure
O Barramento de Serviço fornece um canal de comunicação seguro e confiável entre os dados de runtime do Dataverse e aplicativos externos de linha de negócios baseados em nuvem. Esse recurso é bastante útil para manter sistemas do Dataverse diferentes ou outros servidores do Dataverse sincronizados com alterações de dados comerciais.
A sequência de eventos é a seguinte:
Um aplicativo de ouvinte é registrado em um ponto de extremidade de solução do Barramento de Serviço e começa a ouvir ativamente o contexto de execução remota do Dataverse no barramento de serviço.
Um usuário executa alguma operação no Dataverse que aciona a execução do plug-in predefinido registrado ou um plug-in de conhecimento do Azure personalizado. O plug-in inicia uma postagem por meio de um trabalho do sistema de serviço assíncrono do contexto de dados da solicitação atual no Barramento de Serviço.
As declarações postadas pelo Dataverse são autenticadas. O Barramento de Serviço confia no contexto de execução remoto para o ouvinte. O ouvinte processa as informações de contexto e executa algumas tarefas relacionada aos negócios com essas informações. O Barramento de Serviço notifica o serviço assíncrono de uma postagem com sucesso e define o status do trabalho do sistema relacionado como concluído.
O Barramento de Serviço retransmite o contexto dos dados da mensagem de solicitação entre o Dataverse e os aplicativos de ouvinte de solução do Barramento de Serviço. O Barramento de Serviço também fornece segurança de dados de modo que só aplicativos autorizados podem acessar os dados do Dynamics 365 postados. A autorização do Dataverse para postar o contexto dos dados no Barramento de Serviço e para os aplicativos de ouvinte poderem lê-lo é gerenciada pelas assinaturas de acesso compartilhado do Azure.
Mais informações: Barramento de Serviço e Autenticação e autorização do Barramento de Serviço
Aplicativos de lógica e Power Automate
Os aplicativos lógicos, oferecidos por meio do Azure, Power Automate e Microsoft Power Platform, podem acionar um fluxo de trabalho que pode ser usado para se integrar a eventos e dados de aplicativos em um agendamento ou por atividade em um banco de dados, sistema, serviço ou SaaS.
Esses fluxos de trabalho podem executar lógica e interagir com esses sistemas usando centenas de conectores para bancos de dados, PaaS e SaaS.
Por exemplo, quando uma linha é adicionada a um banco de dados relacional, como SQL, isso pode acionar um fluxo de trabalho que pode inserir esses dados no Dataverse.
Com a capacidade de criar conectores personalizados usando as definições de Open API (anteriormente conhecidas como Swagger) para um serviço, também é fácil incluir serviços, funções e código em execução no IaaS e no Serviço de Kubernetes do Azure (AKS).
Integração do Dataverse com aplicativos com a API OData
Todas as linguagens de programação populares são compatíveis com uma forma de integração com APIs baseadas em REST.
A API Web do Dataverse fornece uma experiência de desenvolvimento que pode ser usada entre uma variedade de linguagens de programação, plataformas e dispositivos. A API da Web implementa o OData (Protocolo Open Data), versão 4.0, um OASIS padrão para criar e consumir APIs RESTful sob fontes de dados ricas. Você pode obter mais informações sobre este protocolo em www.odata.org. Para obter mais informações sobre este padrão, consulte www.oasis-open.org.
O Dataverse adota uma abordagem "API primeiro". Isso significa que o serviço não fornece apenas um mecanismo para consultar dados, mas também metadados do serviço sobre regras de negócios, restrições etc. a serem usados para criar aplicativos e serviços inteligentes e responsivos.
A API é protegida usando o OAuth. O OAuth requer um provedor idtable
para autenticação. Para o Dataverse, o provedor idtable
é a ID do Microsoft Entra. Para autenticar com o Microsoft Entra usando uma conta de trabalho ou escola da Microsoft, use as Bibliotecas de Autenticação da Microsoft (MSAL).
Para obter mais informações sobre como começar com a API Web do Dataverse, consulte Usar a API Web do Dataverse.
Para obter mais informações sobre o uso da API Web do Dataverse com OAuth, consulte Usar o OAuth com o Dataverse.
Plug-ins
O Dataverse permite escrever código situado entre a API e os dados. Esse código, escrito em .NET, é chamado de plug-in. Como o plug-in se situa entre a API e os dados, ele aplica a mesma lógica em todos os aplicativos.
Os plug-ins podem ser síncronos ou assíncronos e executam as seguintes tarefas:
Retorne erros para o usuário.
Consulte os dados do Dataverse para avaliar a lógica a ser executada.
Execute operações de dados.
Execute solicitações HTTP de saída.
Os plug-ins são registrados nos pontos do pipeline de eventos, ilustrados aqui.
No pipeline de eventos, os seguintes eventos podem ocorrer:
Solicitações e Respostas podem ser examinadas e rejeitadas ou manipuladas em várias etapas do pipeline de eventos.
Manipuladores de validação pode lançar exceções personalizadas para rejeitar operações que sua lógica considera inválidas.
Manipuladores pré-operação pode modificar solicitações antes da operação do banco de dados.
Manipuladores pós-operação pode modificar as respostas.
Manipuladores assíncronos executam a automação após o retorno da resposta.
Uma restrição aos plug-ins é que eles devem ser independentes. Se o código de integração exigir referências a outras bibliotecas, a integração poderá ser feita usando o Azure Functions.
Azure Functions
O Azure Functions fornece uma opção de execução de código sem servidor para lógica de negócios e integração.
As funções são acionadas por uma chamada de um sistema, serviço ou código externo. Para o Dataverse, esse gatilho pode vir diretamente do Dataverse usando o Barramento de Serviço, um webhook ou uma chamada de um plug-in. Além disso, a chamada do Azure Functions pode ser iniciada por meio de um fluxo nos Aplicativos Lógicos ou no Power Automate que envolve o conector do Dataverse.
Mais informações: Usar plug-ins para estender os processos de negócios
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).