1-)Öncelikle Microsoftun Sitesinden CrmSdk4 paketini indiriyoruz.
2-)Paketi kurduktan sonra Workflow template kullanabilmek için Sdk klasöründen visualstudiotemplates–cs–workflowactivity içindeki CrmWorkflowActivity.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 workflow için visual studiomuzda bir template olmuş oluyor.
My Documents\Visual Studio 2008\Templates\ProjectTemplates\Visual C#\CRM
3-)Ayrıca projemize aşağıdaki dll leride referans olarak vermemiz gerekiyor.(Bunlarda sdk klasöründe bin içinde mevcutlar)
Microsoft.Crm.Sdk;
Microsoft.Crm.SdkTypeProxy;
Artık workflowumuz kullanılmaya hazır hale geliyor
4-) DependencyProperty komutu Input veya Output Parametreler tanımlamak için kullanılır
[CrmInput(“…”)] Bu Attribute ilede property Crm de Workflow içinden ulaşmamızı sağlıyor
public static DependencyProperty CustomerCodeProperty = DependencyProperty.Register(“CustomerCode”, typeof(System.String), typeof(DeActiveRecordWorkflowActivity));
[CrmInput(“CustomerCode”)]
public String CustomerCode
{
get
{
return (String)base.GetValue(CustomerCodeProperty);
}
set
{
base.SetValue(CustomerCodeProperty, value);
}
}
5-) protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
Bu fonksiyonu runtimede workflow tarafından çağrılarak işletilir.O yüzden işlemimizle ilgili business codeların işletildiği fonksiyon burasıdır.
6-)Crm 4 tarafından kullanılacak olan bütün Plug in assembly imzalanması gerekmektedir.Crm de workflow template kullandığınmız zaman zaten imza otomatik olarak gelmektedir.Ancak kendinizde imzalamak isterseniz
Projeye gelip,propertiesden–Signing den sign the assembly seçeneğini seçiyoruz.
7-)Yaptığımız Bu yeni workflowu Crm sistemimize tanıtmak içinde Plugin Registration Tool exeyi kullanıyoruz.
8-)Registerdan new assembly seçeneğini seçiyoruz.Dll Yerini load assemblyden yükleyerek,daha sonra onaylayarak crm sistemimize tanıtıyoruz.
9-)Crm asenkron servisi restart ettikten sonra artık workflowumuz crmde workflowlarda kullanılmaya hazır hale geliyor.