Microsoft Dynamic Crm’de hızlı bir şekilde ürün tanımlama yapılabilinmektedir. Çoğu zaman Dynamic Crm’in yeni ürün oluşturma platformu yeterli ve hızlı olmamaktadır. Örneğin mevcut ürün bilgileriniz var bunu Dynamic Crm’in veritabanına aktarmak istiyorsunuz veya kullandığınız bir entegre uygulama var ve burada dynamic crm ‘e yeni ürün açtırmak istiyorsunuz. Makalemde Micrsosoft Dynamic Crm 4.0’ ın Sdk’sını kullanarak yeni ürün kaydı açmayı anlatacağım.
Dynamic Crm’in veritabanında ürünler Productbase table’ında tutulmaktadır, product isimli view ile select işlemleri gerçekleştirilmektedir.
Sdk aracılığıyla ürün eklerken Product class’ından bir nesne tanımlayıp tanımladığımız product değişkenine ürüne ait bilgileri set ediyoruz sonrasında crm service’inin create() metodu aracılığıyla kaydımızı gerçekleştiriyoruz.
Sdk ile herhangi bir işlem yapabilmek için crm yetkili kullanıcı girişi yapılması gerekmektedir. Projenin her yerinde kullanabileceğimiz static bir crm service tanımlıyoruz.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
static public CrmService crmservice; //CRM BAĞLANTISI İÇİN //CRM BAĞLANTISI İÇİN public void Crmbaglanti() {//Crm bağlantısı kuruluyor crmservice = new CrmService(); System.Net.NetworkCredential MyCredential = new System.Net.NetworkCredential(); MyCredential.UserName = “CrmUserName”; MyCredential. Password = “UserPassword”; MyCredential.Domain = “CrmdomainName”; crmservice.Credentials = MyCredential; } public void NewProduct() { Crmbaglanti();//Crm hesabı açılıyor //Product class’ından bir nesne tanımlayıp, ilgili değerleri giriyoruz. product prd = new product(); prd.productnumber = productnumber; //ürün kodu prd. name = productname; //ürün adı prd.description = aciklama;// ürüne ait özellikler if (konuId != "" ) { prd.subjectid = new Lookup();//malzeme kategorisi prd.subjectid.type = EntityName.subject.ToString(); prd.subjectid.Value = new Guid(konuId); } prd.transactioncurrencyid = new Lookup();//PARA BİRİMİ prd.transactioncurrencyid.type = EntityName.transactioncurrency.ToString(); prd.transactioncurrencyid.Value = new Guid(parabirimiId);//us dollar prd.defaultuomscheduleid = new Lookup(); prd.statecode = new ProductStateInfo();//kayıt durumu prd.statecode.Value = ProductState.Active; crmservice. Create (prd); /* girdiğimiz bilgileri web servisinin create metodu ile veritabanına kaydediyoruz.*/ } |
Yukarıdaki NewProduct metodunun sonunda kullandığımız “Create()” metodu ile girdiğimiz bilgileri Execute etmiş oluyoruz. Dynamic Crm’deYeni kayıt açmak için Create() metodu, mevcut kaydı düzenlemek için Update() metodu ve kayıtlı bir Crm datasını silmek için de Delete() metodunu kullanıyoruz.
Dynamic CRM ile yeni ürün tanımlama basit hali ile yukarıdaki gibidir. Bir sonraki makalede görüşmek üzere…