Partilhar via


Utilizar plug-ins de low-code no Dataverse (pré-visualização)

[Este tópico é documentação de pré-lançamento e está sujeito a alterações.]

O Microsoft Dataverse oferece uma solução avançada para alcançar uma arquitetura de dados mais eficiente e reduzir a carga de trabalho do lado do cliente através de plug-ins de low-code. Estes plug-ins são fluxos de trabalho reutilizáveis em tempo real que executam um conjunto específico de comandos no Dataverse, executados no lado do servidor e acionados por processadores de eventos personalizados.

Importante

  • Esta é uma funcionalidade de pré-visualização.
  • As caraterísticas de pré-visualização não se destinam à produção e poderão ter caraterísticas restritas. Estas caraterísticas estão disponíveis antes do lançamento oficial, para que os clientes possam ter acesso antecipadamente e enviar comentários.

Tradicionalmente, os plug-ins eram criados como classes personalizadas compiladas numa assemblagem do .NET Framework, que era depois carregada e registada no Dataverse. No entanto, com a introdução de plug-ins de low-code, os utilizadores podem criar estes processadores de eventos com a mínima ou nenhuma programação obrigatória, sem a necessidade de registo manual.

Os plug-ins de low-code são armazenados numa base de dados do Dataverse e podem ser totalmente integrados no Power Apps e no Power Automate. O comportamento do fluxo de trabalho é definido utilizando a linguagem de expressões do Power Fx e pode ligar-se diretamente aos dados de negócio do Dataverse e origens de dados externas através de conectores do Power Platform. Com plug-ins de low-code, os criadores podem criar rapidamente fluxos de trabalho complexos com conhecimentos mínimos de codificação, resultando numa arquitetura de dados mais eficiente e simplificada.

Vantagens da lógica do lado do servidor

A definição da lógica de negócio do lado do servidor oferece várias vantagens, incluindo:

  • Maior segurança. Uma vez que a lógica do lado do servidor é executada no servidor, pode ajudar a impedir o acesso não autorizado a dados ou processos confidenciais.
  • Melhor desempenho. Através da execução no servidor, a lógica de negócio pode reduzir a quantidade de dados que tem de ser transferida entre o cliente e o servidor, resultando em tempos de processamento mais rápidos.
  • Consistência e fiabilidade. A lógica do lado do servidor assegura que as regras de negócio são aplicadas consistentemente em todos os clientes, reduzindo o risco de erros ou inconsistências.
  • Manutenção e atualizações mais fáceis. A centralização da lógica de negócio no servidor torna-se mais fácil de manter e atualizar, uma vez que é possível efetuar alterações num só local em vez de ter de atualizar vários clientes.
  • Escalabilidade. A lógica do lado do servidor pode ser escalada mais facilmente do que a lógica do lado do cliente, permitindo um melhor desempenho e tratamento de cargas de trabalho maiores.

Plug-ins low-code do

Existem dois tipos de plug-ins de low-code suportados no Dataverse:

Tipo Acionador Suporta parâmetros Âmbito suportado
Instantâneo Executado manualmente Sim Gobal e tabela
Automatizado Evento de tabela do Dataverse Não Table

Todos os plug-ins de low-code têm as seguintes propriedades comuns:

Property Descrição
Display name O nome legível por humanos do plug-in. Não pode ser alterado depois de criado.
Nome O nome interno do plug-in. É utilizado pela plataforma para identificar o componente em operações de código e base de dados. Não pode ser alterado depois de criado.
Descrição Utilizado para fornecer contexto adicional sobre o plug-in (finalidade, comportamento ou outros detalhes importantes).
Solução Utilizado para agrupar componentes e exportar para outros ambientes. Saber mais sobre soluções.
Expression Esta é a função personalizada que pode ser utilizada para e execução de ações ou cálculos, definida utilizando a linguagem de expressões do Power Fx. I Power Fx é uma linguagem de fórmulas utilizada em aplicações de tela do Power Apps e foi expandida para ser utilizada em plug-ins de low-code. Consulte as funções suportadas para obter mais detalhes.

Um plug-in de low-code é a lógica de código personalizado que é acionada manualmente por um utilizador. É possível utilizar parâmetros de entrada e saída personalizados.

Propriedades exclusivas:

Property Descrição
Scope Utilizado para associar um plug-in a uma tabela específica. Pode ser definido como tabela (mostrada como entidade) ou global, em que o âmbito da tabela (entidade) significa que o plug-in é acionado com o contexto de um registo de tabela específico, sendo que o âmbito global significa que a operação não está associada a uma tabela (saber mais).
Parâmetros Os parâmetros permitem-lhe transmitir informações entre o plug-in e o contexto que o executa, facilitando a conceção da lógica de negócio que pode ser reutilizada em várias situações.

Os Parâmetros de entrada são utilizados para fornecer dados ao plug-in e permitem-lhe controlar o comportamento da função ao transmitir valores diferentes especificados na fórmula do Power Fx.

Os Parâmetros de saída permitem-lhe obter os resultados de uma função ou método para utilização posterior no seu programa.

Tipos de dados suportados:
  • Boolean
  • Cadeia (de carateres)
  • Float
  • Decimal
  • DateTime
  • Número inteiro

Mais informações sobre como integrar a partir de uma aplicação de tela ou num fluxo de cloud do Power Automate: Integrar um plug-in de low-code

Permissões de plug-in

Tempo de estruturação

Os criadores que possuam o direito de acesso personalizador de sistema ou administrador de sistema no ambiente Power Platform podem aceder a todos os plug-ins nesse ambiente. É possível utilizar direitos de acesso personalizados para restringir o acesso a plug-ins de low-code.

Tempo de execução

Quando um plug-in é invocado, acede aos dados de tabela envolvidos na definição do plug-in (as tabelas que fazem parte da fórmula ou se a tabela está associada às definições de um plug-in automatizado) no contexto do utilizador que o invocou.

Ligações

Através da utilização de direitos de acesso o acesso aos conectores nos plug-ins pode ser restringido a um conjunto específico de utilizadores na organização. Especifique quais as funções que têm privilégios de criação, leitura, atualização ou eliminação.

Pré-requisitos para criar um plug-in low-code

  • A associação ao direito de acesso de administrador de sistema ou de personalizador de sistemas no ambiente Power Platform.
  • Acesso à aplicação de acelerador do Dataverse.

Sugestão

Todos os novos ambientes têm a aplicação de acelerador do Dataverse instalada automaticamente a partir de 1 de outubro de 2023. Se já tiver o acelerador do Dataverse instalado, pode atualizar manualmente o acelerador do Dataverse.

Atualizar o acelerador do Dataverse

  1. Siga as instruções para ver as aplicações licenciadas no ambiente.
  2. Se o Dataverse Accelerator já estiver instalado e estiver disponível uma atualização, tal será indicado na tabela junto ao item.
  3. Selecione Dataverse Accelerator e, em seguida, selecione Atualizar na barra de comando.

Sugestão

Permite atualizações automáticasda aplicação para o editor Microsofr - Power CAT para receber automaticamente atualizações quando disponíveis (não são necessárias para novos ambientes criados a partir de 1 de outubro de 2023).

Nota

Se tiver instalado anteriormente a solução opcional Plug-ins de Low-Code para Conectores, esta será eliminada automaticamente quando atualizar a partir de 29 de junho de 2023. As capacidades estarão disponíveis na solução principal.

Criar um plug-in low-code instantâneo

  1. Reproduza a aplicação de acelerador do Dataverse.
  2. Selecione o cartão Criar plug-in instantâneo. Cartão criar plug-in instantâneo
  3. Forneça um Nome a apresentar.
  4. Opcionalmente, defina os parâmetros:
    • Selecione Novo parâmetro de entrada ou Novo parâmetro de saída e, em seguida, introduza a etiqueta e o tipo de dados.
    • Adicione mais parâmetros de entrada e saída conforme necessário.
  5. Introduza a expressão do Power Fx no editor Expressão.
    • Parâmetros de entrada de referência na fórmula pelo nome de etiqueta.
    • Os parâmetros de saída têm de ser referenciados dentro de chavetas, como { Out: "Return value" }.
    • Tabelas de referência do Dataverse que utilizam funções de recolha de dados, como Filter() e LookUp().
    • Se o âmbito estiver definido como entidade, utilize ThisRecord para aceder a valores de coluna na linha de tabela associada à execução do plug-in, como em ThisRecord.'Account Name'.

    Sugestão

    Tenha em atenção a IntelliSense na caixa Expressão. Vermelho sublinhado é inválido. Amarelo embaralhado significa que a sua lógica pode ser afetada por limitações de delegação. Evite problemas de delegação utilizando funções delegáveis.

  6. Opcionalmente, expanda as Opções avançadas para modificar a solução, o âmbito ou a descrição.
  7. Selecione Guardar.
  8. Teste o plug-in de low-code instantâneo.

Exemplo: calcular a soma de dois números inteiros.

  • Crie dois parâmetros de entrada, X e Y (ambos do tipo número inteiro) e um parâmetro de saída, Z (do tipo cadeia).
  • Utilize a seguinte fórmula: {Z: X + Y }

Exemplo de plug-in instantâneo na aplicação Acelerador do Dataverse

Criar um plug-in low-code automatizado

  1. Reproduza a aplicação de acelerador do Dataverse.
  2. Selecione o cartão Criar plug-in automatizado. Cartão criar plug-in automatizado
  3. Forneça os seguintes valores:
    • Nome: Introduza um nome para o plug-in, como Validação de entrada.
    • Tabela: escolha uma tabela para associar o plug-in, como Conta.
    • Executar esta regra de plug-in quando a linha é. Especifique o evento de dados que invoca o plug-in.
  4. Introduza a expressão do Power Fx no editor Expressão.
    • Tabelas de referência do Dataverse que utilizam funções de recolha de dados, como Filter() e LookUp().
    • Utilize ThisRecord para aceder a valores de coluna na linha de tabela associada à execução do plug-in, como em ThisRecord.'Account Name'.
  5. Opcionalmente, expanda Opções avançadas para modificar a fase (quando deve ser executada) e a solução na qual o plug-in é guardado.
  6. Selecione Guardar.
  7. Teste o plug-in de low-code automatizado.

Utilizar conectores do Power Platform em plug-ins de low-code

Os conectores do Power Platform podem ser utilizados em plug-ins de low-code para integrar facilmente dados e funcionalidades de sistemas externos ao Dataverse, como o SQL Server, o Salesforce e o SharePoint, sem necessidade de codificação complexa ou desenvolvimento personalizado.

Pré-requisitos para utilizar conectores em plug-ins de low-code

Utilizar ações de conector em plug-ins de low-code

Pode utilizar facilmente conectores e conectores personalizados a partir de um plug-in de low-code numa fórmula do Power Fx.

  1. Crie uma ligação ao conector que pretende utilizar.
  2. Adicione uma referência de ligação à ligação no ambiente do Dataverse.
  3. No editor de expressões de plug-in de low-code do Power Fx, escreva o nome da referência de ligação (o nome interno com um prefixo e caráter de sublinado, como new_connectorName, e não o nome a apresentar).
  4. A IntelliSense mostra-lhe as ações disponíveis. Selecione a a ação que pretende e, em seguida, introduza os parâmetros necessários.

Antes de utilizar um conector num plug-in de low-code, consulte a documentação do conector para se certificar de que está a transmitir os parâmetros de entrada e saída corretamente.

Mais informações: exemplo

Nota

  • Nem todas as ações de conector são atualmente suportadas.
  • Não utilize o conector do Dataverse para ligar a tabelas do Dataverse a partir de uma expressão de plug-in. Em vez disso, utilize as funções nativas do Power Fx para interagir com coleções: Filtro, Pesquisa, Procura, Patch, Recolha e Definir, em que as colunas são tratadas como variáveis globais.

Testar um plug-in low-code

Testar plug-ins instantâneos

  1. A partir do ecrã Base, selecione um plug-in instantâneo a partir da lista e, em seguida, selecione Testar na barra de comandos. Também pode obter este ecrã a partir do editor de plug-in instantâneo na barra de comandos depois de a mesma ter sido guardada. Selecionar Teste para o plug-in de low-code

  2. Forneça valores para quaisquer parâmetros de entrada que sejam definidos no plug-in low-code e, em seguida, selecione Executar. Selecionar Executar para teste o plug-in de low-code

Observe a resposta.

Sugestão

Utilize parâmetros de saída para ajudar a validar o comportamento e os resultados esperados. Caso contrário, só verá um êxito ou uma falha no momento do teste.

Testar plug-ins automatizados

Teste os plug-ins automatizados invocando o evento de dados. Observe se o plug-in foi executado com sucesso validando as alterações esperadas que estavam definidas na fórmula.

Sugestão

Durante a pré-visualização, pode invocar o evento de dados associado utilizando o editor de tabelas no Power Apps:

  1. Inicie sessão no Power Apps, aceda a Tabelas e selecione a tabela Plug-in.
  2. Na barra de comando, selecione Editar.
  3. Crie, atualize ou elimine linhas diretamente a partir desta vista. Em alternativa, abra uma linha no formulário predefinido selecionando uma linha e selecione Editar linha utilizando o formulário na barra de comandos.

Integrar um plug-in low-code

Invocar um plug-in instantâneo a partir de uma aplicação de tela ou de uma página personalizada

  1. Na aplicação Acelerador do Dataverse
    1. Selecione o plug-in instantâneo na lista.
    2. Selecione Copiar fragmento de código na barra de comandos. Invocar um plug-in de low-code de instância
    3. Cole e guarde a fórmula copiada num editor de texto ou bloco de notas (poderá voltar facilmente a essa fórmula).
  2. No Power Apps:
    1. Crie ou edite uma aplicação de tela (ou página personalizada) no Power Apps studio.
    2. Na navegação à esquerda, no separador Origem de Dados, selecione + Nova origem de dados e pesquise pela opção Ambiente a partir do conector do Dataverse.
    3. Introduza os seguintes componentes na tela :
    • Adicione controlos de entrada que correspondam ao tipo de dados de cada parâmetro, como Entrada de texto para texto ou números, alternar para booleano.
    • Se o âmbito do plug-in estiver dependente de uma tabela, adicione uma caixa de combinação associada à mesma tabela para que possa escolher a entrada.
    • Adicione um botão para chamar o plug-in.
  3. Cole a fórmula do plug-in que copiou para a propriedade OnSelect do botão.
  4. Mapeie cada Value do parâmetro de entrada para referenciar os controlos de entrada correspondentes:
    • Se a fórmula tivesse Environment.new_CalculateSum({ X: Value, Y: Value });, poderia ser reescrita como: Environment.new_CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text });
    • Se a fórmula estiver dependente, substitua Environment pelo nome a apresentar da tabela para aceder ao plug-in.
  5. Se for definido um parâmetro de saída para o plug-in de low-code:
    1. Capture a resposta numa fórmula Set() ou UpdateContext(): Set( ActionResult, Environments.CalculateSum({ X: TextInput1.Text, Y: TextInput2.Text }) );. Apresente a variável numa etiqueta. Em alternativa, utilize a fórmula Notify() para apresentar dados numa notificação.
  6. Reproduza a aplicação e selecione o comando na barra de comandos para executar o plug-in de low-code.

Saber mais sobre como pode chamar as ações do Dataverse diretamente a partir do Power Fx em aplicações de tela.

Invocar um plug-in instantâneo a partir de um fluxo de cloud do Power Automate

  1. Num fluxo de cloud, adicione uma nova ação a partir do conector do Microsoft Dataverse .
  2. Selecione a a ação denominada Realizar uma ação não dependente ou Realizar uma ação dependente.
  3. Selecione o plug-in (tem o nome exclusivo com um prefixo).
  4. Forneça valores para todos os parâmetros de entrada (se for o caso).

Invocar um plug-in instantâneo a partir da API Web do Dataverse

Siga os passos para as secções Ação não dependente ou Função dependente de tabela em Invocar API personalizadas a partir da documentação da API Web (dependendo do âmbito apropriado do plug-in).

Obter ajuda com os seus plug-ins de low-code

Se encontrar problemas ao criar ou executar o plug-in de low-code, aceda a estas sugestões para problemas comuns que podem ocorrer: sugestões de plug-ins de low-code e problemas conhecidos do Microsoft Dataverse

Contactar a Ajuda + suporte

Para problemas com a instalação da solução Accelerator do Dataverse ou plug-ins de low-code não abrangidos nas sugestões de plug-ins low-code e problemas conhecidos do Microsoft Dataverse, tais como erros não documentados recebidos, utilize a experiência de Ajuda + suporte e inclua as seguintes informações:

  • Tipo de Problema - API Web e SDK do Dataverse
  • Subtipo de Problema - kit Accelerator para Dataverse

Exemplo de plug-ins low-code que pode criar

Para alguns exemplos de como criar um plug-in de low-code, aceda a Exemplo de plug-ins de low-code do Dataverse (pré-visualização)

Limitações

  • O objeto de linguagem do ambiente tem de ser readicionado para aceder a novos plug-ins dentro de aplicações de tela. Para quaisquer plug-ins criados depois de ter adicionado a origem de dados da tabela de ambiente a uma aplicação de tela existente, terá de remover e voltar a adicionar o objeto de linguagem de ambiente do Power Fx. Em seguida, irá ver a lista atualizada de plug-ins como ações.

  • A IntelliSense necessita de notação explícita em plug-ins automatizados se se quiser referir a quaisquer tabelas na fórmula. Utilize a sintaxe de desambiguação seguinte, como [@Accounts], utilizando parêntesis retos e o símbolo @ (não Accounts).

  • Suporte aninhado. Os plug-ins só podem chamar as ações de primeiros publicadas pela Microsoft a partir de expressões do Power Fx.

  • Alguns cenários Collect exigem Patch. Existem alguns cenários onde Collect() não funciona. A solução é utilizar Patch() como mostrado abaixo no exemplo de coluna relativa ao preenchimento. Se estiver a criar um plug-in automatizado, prepare @ para cada tabela referenciada na fórmula do Power Fx.

    Patch(Faxes,
        Collect(Faxes, { Subject : "Sub1" } ),
        { Regarding : First(Accounts) }
    )
    
  • Quando os plug-ins de low-code interagem com conectores e o DLP é utilizado, o administrador pode bloquear a criação de ligações utilizando o DLP. No entanto, as referências de ligação existentes no ambiente Dataverse continuam a funcionar. Caso o administrador tenha de bloquear todas as interações de plug-in de low-code a quaisquer conectores, pode desativar a definição da organização Allowconnectorsonpowerfxactions. Esta definição está ativada por predefinição e pode ser desativada por métodos SDK habituais (WebAPI, SDK, PowerShell, etc.). Pode desativá-la utilizando um plug-in instantâneo de low-code do seguinte modo:

    Patch(Organizations, First(Organizations), { 'Enable connectors on power fx actions.': 'Enable connectors on power fx actions. (Organizations)'.No })
    
  • Os plug-ins que utilizam conectores só podem ter resultados de campos específicos. Devido a este resultado, tem de mapear valores primitivos específicos a partir da resposta do conector para valores de saída.

Plug-ins de low-code que possuem limitação de conectores personalizados

Se tiver plug-ins de low-code com conectores personalizados, os conectores personalizados deverão ser importados primeiro, antes das referências de ligações ou fluxos.

Se o seu ambiente não contiver o conector personalizado numa solução, importe uma solução separada que inclua apenas o conector personalizado. Realize esta importação antes de importar a solução real. Precisa de fazê-la primeiro porque o Azure tem de registar o conector personalizado antes de outros componentes de solução poderem ser importados.

Se importar uma solução que contenha conectores personalizados e fluxos, o Azure não consegue registar o conector personalizado enquanto estiver a registar as suas referências ou fluxos de ligação. Isto também se aplica a referências de ligação para o conector personalizado que não foi previamente importado numa solução separada. Se o Azure não registou o seu conector personalizado, a importação falha e não poderá iniciar a importação.

Mais Informações: Criar conectores personalizados em soluções: limitações conhecidas

Consulte também

Plug-ins low-code do Power Fx (pré-visualização)

Utilizar um pedido pré-criado num plug-in low-code do Dataverse no Power Apps

Criar um plug-in low-code automatizado com o Power Apps (vídeo)

Criar um plug-in low-code instantâneo com o Power Apps (vídeo)