Partilhar via


Use plug-ins para estender processos corporativos

Um plug-in é um manipulador de eventos personalizado que é executado em resposta a um evento específico gerado durante o processamento de uma operação de dados do Microsoft Dataverse. Implemente o plug-in como uma classe personalizada compilada em um assembly do .NET Framework que você pode carregar e registrar com o Dataverse. Você pode registrar uma ou mais classes de plug-in compiladas em um assembly em eventos específicos (etapas) na estrutura de eventos do Dataverse. Quando o evento de destino ocorre durante uma operação de processamento de dados, o código dentro da classe de plug-in registrada é executado, fornecendo uma maneira de aumentar ou modificar o comportamento de processamento de dados padrão da plataforma.

Dica

Sempre que possível, primeiro considere aplicar uma das várias opções declarativas para definir a lógica de negócios. Para obter mais informações, consulte Aplicar lógica de negócios no Dataverse.

Use plugins quando um processo declarativo não atender às suas necessidades.

Mais detalhes sobre plug-ins

Todas as classes em um assembly que você registrar em uma etapa de pipeline de eventos devem implementar a interface IPlugin. Essa interface expõe um único método chamado Execute. Quando ocorre um evento que tem uma classe compilada registrada, a plataforma passa dados contextuais sobre a operação de dados que está sendo processada para o método Execute do plug-in. Dentro do Execute método, seu código personalizado pode:

  • Cancelar a operação atual do pipeline de processamento de dados e, opcionalmente, exibir um erro para o usuário
  • Fazer alterações nos dados empresariais que estão sendo processados na operação do pipeline atual
  • Invocar outras operações de dados
  • Conectar-se a sistemas externos
  • Transferir informações para outro plug-in 'downstream' registrado no mesmo pipeline
  • Mais...

Registre plug-ins para executar de forma síncrona ou assíncrona. Um plug-in síncrono faz com que a operação de dados aguarde até que o código no plug-in seja concluído. Esse atraso afeta o desempenho percebido pelo usuário final do sistema, razão pela qual os plug-ins síncronos devem ser executados e concluídos rapidamente. A execução de plug-in assíncrono é enfileirada e executada após a conclusão da operação de dados.

Quando usar plug-ins

As pessoas frequentemente comparam atividades de fluxo de trabalho personalizadas e plug-ins como as opções para aplicar a lógica de negócios personalizada. Há uma sobreposição significativa nos recursos de atividades de fluxo de trabalho e plug-ins. Os plug-ins podem fazer tudo o que as atividades de fluxo de trabalho podem fazer, mas o inverso não é verdadeiro. Esse fato não significa que você deve usar apenas plug-ins para qualquer coisa que não possa ser feita com um fluxo de trabalho. Outros recursos podem alcançar requisitos sem usar plug-ins.

  • Os fluxos de trabalho podem usar atividades personalizadas de fluxo de trabalho, que você pode usar para criar condições e ações reutilizáveis com código que você pode usar em vários fluxos de trabalho.

  • Os campos calculados e cumulativos fornecem recursos que anteriormente só podiam ser feitos usando fluxos de trabalho.

  • Ações Personalizadas são um tipo de processo semelhante aos fluxos de trabalho que você pode usar para criar mensagens reutilizáveis que outros fluxos de trabalho ou pontos de extremidade de serviço Web podem chamar.

  • A integração e os webhooks do Barramento de Serviço do Azure podem transmitir dados para sistemas externos para aplicação de lógica usando diversos recursos.

  • O Power Automate fornece muitos recursos que foram executados anteriormente usando plug-ins.

Avalie cada uma dessas opções para entender a melhor maneira de atender aos seus requisitos.

Vantagens dos plug-ins

Essas são as principais vantagens dos plug-ins:

  • Os plug-ins têm um bom desempenho. Um plug-in bem escrito fornece a maneira mais eficiente de aplicar a lógica de negócios personalizada.
  • Os plug-ins são poderosos. Muitos desenvolvedores preferem usar as habilidades e o conhecimento que possuem para definir a lógica e usar os recursos para trabalhar diretamente com o serviço Web dataverse ou serviços externos no código. Um desenvolvedor de plug-in experiente pode ser muito produtivo.
  • Os plug-ins estendem a funcionalidade do Dataverse quando uma solução de negócios pronta para uso não existe.

Desvantagens dos plug-ins

  • Os plug-ins exigem as habilidades especiais de um desenvolvedor de software para criar e manter o código de plug-in. Empresas menores podem não ter acesso a um desenvolvedor com as habilidades necessárias. Os processos empresariais podem mudar rapidamente e fornecer opções para habilitar a alteração sem exigir que um desenvolvedor possa permitir que o sistema se adapte mais rapidamente.
  • Os plug-ins podem ser abusados. Um plug-in mal escrito pode causar um impacto significativo no desempenho percebido do pipeline de processamento de dados e, por fim, no ambiente interativo do usuário final. O grande poder dos plug-ins precisa ser aplicado com alguma contenção e consideração pelo impacto que ele tem no sistema como um todo.
  • Os plug-ins têm apenas um curto período de tempo (um limite rígido) para concluir seu trabalho.

Próximas Etapas 

Para saber mais sobre como usar plug-ins, consulte o tutorial a seguir e os tópicos de instruções.

Tutoriais

Esses tópicos orientam você pelo processo básico de criação, registro e depuração de alguns plug-ins simples.

Tópicos práticos

Esses tópicos fornecem detalhes adicionais comuns ao desenvolvimento de plug-in.

Depois de ler e entender os conceitos de plug-in, considere explorar esses recursos e tecnologias adicionais relacionados ao plug-in.