CRM 4 – Plugins

Há alguns dias um colega de fórum necessitou de uma espécie de “tutorial” de como criar um plugin no CRM, para alguns talvez esta informação não seja muito útil, porém para quem está começando ajuda muito, vamos lá…

Neste exemplo eu usei o Visual Studio 2010 Ultimate e o Dynamics CRM 4, pouca coisa mudará se forem adaptar para o CRM 2011 (On-Premises), o importante é o conceito…

Abra o Visual Studio e crie um novo projeto (File > New Project), selecione Class Library e informe o nome do projeto:

Na sequência, localize e adicione as duas DLL’s do SDK (Microsoft.Crm.Sdk e Microsoft.Crm.SdkTypeProxy) no projeto (Botão direito no nome do projeto > Add Reference…):



Agora precisamos registrar uma key para que a dll gerada seja de “nome forte” para que compile corretamente. (Botão direito no nome do projeto > Properties > Signing > Marque “Sign the assembly” > Selecione “<New…>”)

Depois digite um nome e desmarque “Protect my key…”

Em seguida, adicione as dll’s referenciadas e implemente a interface IPlugin em sua classe, sendo assim “obrigado” a escrever o método Execute:

O trecho a seguir é apenas um breve exemplo de algo que pode ser feito, eu estou supondo que este plugin funcionará na qualificação de um Cliente Potencial (lead), assim eu recupero o Id do lead e realizo qualquer operação necessária. O mais importe é compreender o consumir adequadamente o contexto e o CRM Service, pois com eles recuperamos o estado atual e acionamos o Web Service CRM, passando como usuário o mesmo que envocou o plugin. Após inserir a lógica, é hora de realizar um Build da dll. (Botão direito no nome do projeto > Build ou Rebuild) Recupere a dll dentro da pasta bin de seu projeto e cole no servidor de aplicação CRM em C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly.

Agora que já temos nossa dll compilada, chegou o momento de registrá-la, para isso é necessário baixar o Plugin Registration Tool, executável que registra nossas dll’s. Faça isso no servidor de aplicação do CRM, pois terá que ter acesso a ele e as dll’s obviamente ficarão lá também.

O passo seguinte é configurar uma conexão de acesso, escolha um Nome, informe o Servidor, a Porta em que foi instalado, Domínio e Usuário (este deve ter permissões de customizador ou administrador). Clique em Conect e solicitarão a senha do usuário, informe e confirme

Para registrar a dll, clique em Register New Assembly…, depois nos ““, localize a dll e confirme, será apresentada a tela abaixo:

Registre o plugin (Register Selected Plugins).

Agora temos nosso plugin registrado, certo? Isso mesmo, porém ainda não informamos onde ele irá atuar, fica como se tivéssemos um carro, mas não sabemos dirigir :(

Vamos acionar o Step onde o plugin irá atuar. Clique com o botão direito sobre o nome do plugin e depois em Register New Step. Uma tela como a abaixo irá ser apresentada:

Em Message, informamos em que circunstância o plugin será acionado no exemplo ficou na mudança de status. Primary Entity é a entidade ao qual o plugin funcionará (podemos ter um mesmo plugin registrado para quantas entidades quisermos, desde que a síntase funcione corretamente). As demais informações não são obrigatórias e são modificadas caso a caso, neste exemplo não vou procurar me apronfundar senão perco a idéia inicial (Aguardem novos posts!). No fim, clique em Register New Step. Pronto é isso temos nosso plugin finalizado!

Para testá-lo navegue pelo CRM até a entidade que registrou o plugin e realize a mesma ação que informou no campo Message no momento do registro do Step.

Alguns links que ajudarão a aprofundar o conhecimento:

Bom é isso, espero que seja útil!

Att,

Anúncios

Sobre Tiago Michelini Cardoso

I have been working with IT since 2006, almost of this time using Microsoft Dynamics CRM/365 as a source of solutions. I graduated in Bachelor of Information Systems at FIAP (Brazil) in 2012. I really love what I do! Technology has been my interest since always. Even in a tool different world of the current. When we didn't have internet, tablets, smartphones e social networks! Although I have worked in some roles, I can't give up "the developer life". Even so far of the greatest developers. Development in general is the thing that I love to work! I started my contributions about Dynamics in 2010. At the beginning, I used to help at MSDN and TechNet forums. But now, I'm dedicating all my time in my personal blog! Currently, I have the enormous honour of being the only Brazilian who got the award for Microsoft MVP (Most Valuable Professional) for Microsoft Dynamics CRM/365 product. I have been receiving the award since 2012.
Esse post foi publicado em Dynamics CRM e marcado , . Guardar link permanente.

2 respostas para CRM 4 – Plugins

  1. Claudinei disse:

    Tiago, qual seria o grande lance de ter um nome forte de uma dll ?

    Curtir

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s