CRM 4 PLUGIN YAZMAK

1-)Öncelikle Microsoftun Sitesinden CrmSdk4 paketini indiriyoruz.

2-)Paketi kurduktan sonra PlugIntemplate kullanabilmek için Sdk klasöründen visualstudiotemplatesàcsàplugin içindekiplugin.zip dosyasını alarak visual studiomuzun project templatelerinde c# klasörünün içine CRM diye bir klasör oluşturuyoruz.Ve Bu zip dosyamızı buraya extract ediyoruz.Böylece artık plugin için visual studiomuzda bir template olmuş oluyor.

My Documents\Visual Studio 2008\Templates\ProjectTemplates\Visual C#\CRMPlugin

2-)Crm Sdkları projeye  referans olarak  veriyoruz

Microsoft.crm.sdk

Microsoft.crm.sdktypeproxy

3-)Template olarak kullanmak istemiyorsanız sdkları ekledikten sonra IPlugin den türetme yapmanızda yeterlidir.Plugin olarak türeyecek sınıf public olmalıdır

public class Post_Create:IPlugin

4-)Plugin dll mutlaka classlibrary–>properties–>signing kısmından imzalanmalıdır

5-)Moniker contexten gelen entitynin Id ve Name alabiliyoruz

Moniker moniker = (Moniker)context.InputParameters.Properties[“EntityMoniker”];

6-) contexten gelen entity ve özelliklerine aşağıdaki gibi ulaşabiliriz

if (context.InputParameters.Properties.Contains(“Target”) &&

context.InputParameters.Properties[“Target”] is DynamicEntity)

if (context.PostEntityImages[“Post_Object”] is DynamicEntity)

{

DynamicEntity entity = (DynamicEntity)context.PostEntityImages[“Post_Object”];

if (entity.Name == EntityName.contact.ToString())

{

if (entity.Properties.Contains(“contactid”))

{

kisiId = ((Key)entity.Properties[“contactid”]).Value;

}

7-)Entityözelliklerini aşağıdaki gibi değiştirebiliriz

if (entity.Properties.Contains(“new_durumu”))

entity.Properties.Remove(“new_durumu”);

entity.Properties.Add(new PicklistProperty(“new_durumu”, new Picklist(1)));

mycrmservice.Update(entity);

8-)Pluginimizi yazdıktan sonra bu plugin crm tanıtmamız gerekmektedir

Bunun için PluginRegistrationTool unu kullanıyoruz

9-)Register New Assembly diyerek pluginimizi crm tanıtıyoruz

Register New Step ile de pluginimizin hangi entitynin hangi eventindeçalışacağınız belirtiyoruz

Stage ile de eventin gerçekleşmesinden sonraki durumda mı önceden mi olacağınız belirtiyoruz

Bu yazı CRM kategorisine gönderilmiş. Kalıcı bağlantıyı yer imlerinize ekleyin.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>