Criar uma atividade de fluxo de trabalho personalizado
Publicado: janeiro de 2017
Aplicável a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
Este tópico descreve como criar uma atividade de fluxo de trabalho personalizada e registrá-la para uso no Microsoft Dynamics 365 (online e local). Para o Microsoft Dynamics 365 (online), atividades de fluxo de trabalho personalizadas podem ser registradas para execução na área restrita (confiança parcial). Para obter mais informações sobre a área restrita e confiança parcial, consulte Isolamento, estatísticas e confianças de plug-in.
Neste tópico
Software e montagens necessários
Use a classe base de fluxo de trabalho CodeActivity
Especifique o nome e o nome do grupo para uma atividade de fluxo de trabalho personalizada
Software e montagens necessários
Para desenvolver atividades personalizadas do Windows Workflow Foundation 4 para Dynamics 365, você deve desenvolvê-las no Microsoft .NET Framework 4.5.2. Os assemblies a seguir devem ser adicionados como referências ao projeto. Podem ser encontrados na pasta SDK\Bin do SDK do Microsoft Dynamics 365.Baixe o pacote do SDK do Microsoft Dynamics CRM.
Microsoft.Xrm.Sdk.dll
Microsoft.Xrm.Sdk.Workflow.dll
Use a classe base de fluxo de trabalho CodeActivity
Para criar uma atividade de fluxo de trabalho personalizada, crie uma classe que seja herdada da classe base de fluxo de trabalho CodeActivity. Essa classe está disponível no namespace System.Activities. Atividades que são herdadas da classe CodeActivity podem substituir o método Execute para produzir funcionalidade personalizada.
Inicie o Microsoft Visual Studio.
No menu Arquivo, clique em Novo e, em seguida, clique em Projeto.
Na caixa de diálogo Novo projeto, selecione Fluxo de trabalho em Visual C# no painel Modelos instalados e, em seguida, selecione Biblioteca de atividades.
Especifique um nome e local para a solução e, em seguida, clique em OK.
Navegue até o menu Projeto e selecione Propriedades. Na guia Aplicativo, especifique .NET Framework 4.5.2 como a estrutura de destino.
Adicione referências aos assemblies do Microsoft.Xrm.Sdk.dll e do Microsoft.Xrm.Workflow.dll.
Exclua o arquivo Activity1.xaml no projeto.
Adicione um arquivo de classes (.cs) ao projeto. No Solution Explorer, clique com o botão direito do mouse no projeto, selecione Adicionar e, em seguida, clique em Classe. Na caixa de diálogo Adicionar novo item, digite um nome para a classe e, em seguida, clique em Adicionar.
Abra o arquivo de classes e adicione o seguinte usando diretivas:
using System.Activities;using Microsoft.Xrm.Sdk;using Microsoft.Xrm.Sdk.Workflow;
Torne a classe herdeira da classe CodeActivity e conceda a ela um modificador de acesso público, conforme mostrado aqui:
public class SampleCustomActivity : CodeActivity
Adicione funcionalidade à classe, adicionando um método de Execução:
protected override void Execute(CodeActivityContext context){ //Activity code}
Para obter mais informações, consulte Adicionar metadados para uma atividade de fluxo de trabalho personalizada.
Especifique parâmetros de entrada e de saída. Para obter mais informações, consulte Adicionar metadados para uma atividade de fluxo de trabalho personalizada.
Nas propriedades do projeto, na guia, selecione Assinatura, selecione Assinar o assembly e forneça um nome de arquivo principal. Assemblies de atividade (e plug-in) de fluxo de trabalho personalizada devem ser assinados.
Compile o projeto para criar um assembly (.dll).
Para exibir uma amostra de código que demonstre como criar uma atividade de fluxo de trabalho personalizada, consulte Exemplo: Criar uma atividade de fluxo de trabalho personalizada.
Importante
Para melhorar o desempenho, o Microsoft Dynamics 365 armazena em cache as instâncias de atividade de fluxo de trabalho personalizadas. O método de Execução da atividade de fluxo de trabalho personalizada deve ser criado para não ter monitoração do status, porque o construtor não é chamado para cada invocação da atividade de fluxo de trabalho personalizada. Além disso, vários threads do sistema podem executar a atividade de fluxo de trabalho personalizada ao mesmo tempo. Todas as informações por estado da invocação são armazenadas no contexto, portanto não é recomendável usar variáveis globais ou variáveis do membro para transmitir dados de uma invocação para a próxima.
Especifique o nome e o nome do grupo para uma atividade de fluxo de trabalho personalizada
Ao registrar um assembly de atividade de fluxo de trabalho personalizada, especifique o nome e o nome do grupo. A propriedade de nome especifica o nome da atividade de fluxo de trabalho. A propriedade de nome de grupo especifica o nome do submenu adicionado ao menu principal do designer de processo do Microsoft Dynamics 365. Essas propriedades vinculam a atividade de fluxo de trabalho personalizada com o designer de processo do Microsoft Dynamics 365, para que o nome da atividade personalizada seja exibido na interface com o usuário.
Para especificar o nome e o nome do grupo para uma atividade de fluxo de trabalho personalizada, use os atributos PluginType.Name e PluginType.WorkflowActivityGroupName ao registrar o assembly de atividade de fluxo de trabalho personalizada. Para obter mais informações sobre o registro de atividades de fluxo de trabalho personalizadas, consulte Registrar e usar um assembly de atividades de fluxo de trabalho personalizadas. Se os atributos PluginType.Name e PluginType.WorkflowActivityGroupName forem definidos como nulo, a atividade personalizada será ocultada do criador do fluxo de trabalho do Microsoft Dynamics 365 e só está acessível a partir dos fluxos de trabalho XAML.
Se você estiver usando a ferramenta de registro de plug-in para registrar o assembly de atividade de fluxo de trabalho personalizada, será possível especificar valores apropriados nas caixas Nome e WorkflowActivityGroupName na região Editável. Para obter mais informações sobre o uso da ferramenta de registro de plug-in, consulte Passo a passo: Registrar um plug-in usando a ferramenta de registro de plug-in.
Depois que essa atividade de fluxo de trabalho personalizada é registrada, você pode usá-la a partir do designer de processo do Microsoft Dynamics 365 para fluxos de trabalho ou caixas de diálogo. Para obter mais informações, consulte Registrar e usar um assembly de atividades de fluxo de trabalho personalizadas.
Confira Também
Atividades personalizadas de fluxo de trabalho (assemblies de fluxo de trabalho)
Adicionar metadados para uma atividade de fluxo de trabalho personalizada
Usar o serviço Web IOrganization em uma atividade de fluxo de trabalho personalizada
Exemplo: Criar uma atividade de fluxo de trabalho personalizada
Exemplo: Atividade de fluxo de trabalho personalizada de conhecimento do Azure
Classes de Atividade Base do Windows Workflow Foundation 4
Microsoft Dynamics 365
© 2017 Microsoft. Todos os direitos reservados. Direitos autorais