Makale numarası: 2283955 - Son Gözden Geçirme: 15 Temmuz 2010 Perşembe - Gözden geçirme: 1.0 Microsoft Dynamics CRM içerisinde İstemci Taraflı Kod Geliştirme
ÖzetBu resmi kapat ![]()
ÇözümWeb uygulamalarının istemci (client) tarafında birtakım işlemleri gerçekleştirmesi sunucunun (server) daha rahat çalışmasını sağlayacaktır. Dynamics CRM'de bir web tabanlı bir mimariye sahip olduğu için bu durum onda da geçerli. DOM nesne modelinde her HTML elemanı bir nesne olduğu için DHTML programlama teknikleri ile CRM'in formlarına ve nesnelerine erişip işlemler gerçekleştirebilirsiniz. CRM'in SDK'sı içerisinde "Client Extensions and Scripting" bölümü altında detaylı bilgilerini bulabileceğiniz metot, olay ve nesneleri bir arada bulabileceğiniz bir yazı hazırladım size. Bu tabloyu kapa
Genel değişkenler ve metotları gördükten sonra şimdi nesnelerimizi içinde barındıran crmForm isimli formumuza ait neler varmış bir bakalım. Bu tabloyu kapa
Aşağıdaki tabloda crmForm.all.<alanadi> ile erişilebilir alanların ortak özellik ve metotlarını bulabilirsiniz.Burada unutulmamsı gereken nokta lookup ve picklist alanların aslında birer dizi olduklarıdır. İçlerinden birden fazla veri tutabildikleri gibi kullanıcının gördüğü ile veritabanına yazılanların farklı olmasıdır. (lookup için GUID, picklist için ise seçilenin integer değeri yazılır). Bu tabloyu kapa
Lookup alanları daha derinlemesine inceleyelim. Lookup alanların yukarıdaki özelliklere ek olarak aşağıdaki üç özelliği bulunmaktadır. Bu tabloyu kapa
Örneklerle konuyu pekiştirelim. Lookup veri alanından değer okumak ile ilgili örnek; Bu örnekte bir primarycontactid isimli alandaki değeri öğreniyoruz. var lookupItem = new Array; //primarycontactid alanndaki veriyi okuyoruz. lookupItem = crmForm.all.primarycontactid.DataValue; //eğer veri var ise gösteriyoruz. if (lookupItem[0] != null) { // metin alert(lookupItem[0].name); // GUID alert(lookupItem[0].id); // entity ad. alert(lookupItem[0].typename); } Lookup veri alanına veri yazmakla ilgili örnek; Bu örnekte parentaccountid isimli alana değer atıyoruz. //bir Array oluturuyoruz. var lookupData = new Array(); //Object nesnesi ekliyoruz. var lookupItem = new Object(); //Object nesnemizde id, typename ve name zelliklerini dolduruyoruz. lookupItem.id = '{1AAC1363-01A1-DB11-8432-0003FF9CE217}'; lookupItem.typename = 'account'; lookupItem.name = 'A Bike Store'; // Object nesnemizi Array'a veriyoruz. lookupData[0] = lookupItem; // Array' parentaccountid alanna veriyoruz. crmForm.all.parentaccountid.DataValue = lookupData; Bu tabloyu kapa
Picklist alanlar ile örneğimize geçelim; Bu örnekte categorytype isimli alan içerisindeki değerlerle oynuyoruz. var oField = crmForm.all.categorytype; // 4. öğeyi alyoruz. var oOption = oField.Options[4]; // kaç tane öğe olduğunu öğreniyoruz. alert("Original length :" + oField.Options.length); // birinci öğeye değer atıyoruz. oField.DataValue = 1; // birinci öğenin adını alıyoruz. alert(oField.SelectedText); // 4. öğeyi siliyoruz. oField.DeleteOption(4); // kaç tane öğe olduğunu öğreniyoruz. alert("New length :" + oField.Options.length); // 4. öğeyi yeniden ekliyoruz. oField.AddOption(oOption.Text, oOption.DataValue); // kaç tane öğe olduğunu öğreniyoruz. alert("Restored length :" + oField.Options.length); Form üzerinde JavaScript kodu ile yukarıdaki anlattıklarımı birleştirerek her şeyi yazmanız mümkün. Daha önceki JavaScript ile ilgili makalelerimden başka örnekler de bulabilirsiniz: http://www.cub-e.net/post/CRM-icerisinden-Java-Script-kullanarak-web-sayfasc4b1-cagc4b1rmak.aspx (http://www.cub-e.net/post/CRM-icerisinden-Java-Script-kullanarak-web-sayfasc4b1-cagc4b1rmak.aspx) http://www.cub-e.net/post/Microsoft-CRM-30-Navigation-Bar-Ogelerini-Form-Icinde-IFrame-Ile-Gostermek.aspx (http://www.cub-e.net/post/Microsoft-CRM-30-Navigation-Bar-Ogelerini-Form-Icinde-IFrame-Ile-Gostermek.aspx) http://www.cub-e.net/post/OnSave()-Events-on-Dynamics-CRM-javascipt.aspx (http://www.cub-e.net/post/OnSave%28%29-Events-on-Dynamics-CRM-javascipt.aspx) http://www.cub-e.net/post/OnSave()-Events-on-Dynamics-CRM---Part-II.aspx (http://www.cub-e.net/post/OnSave%28%29-Events-on-Dynamics-CRM---Part-II.aspx) http://www.cub-e.net/post/Ascentium-CrmService-JavaScript-Library.aspx (http://www.cub-e.net/post/Ascentium-CrmService-JavaScript-Library.aspx) http://www.cub-e.net/post/Use-JavaScript-executecalllaunch-Dynamics-CRM-40-Workflow.aspx (http://www.cub-e.net/post/Use-JavaScript-executecalllaunch-Dynamics-CRM-40-Workflow.aspx) http://www.cub-e.net/post/CRM-workflow-date-update-includes-saturdays-sundays.aspx (http://www.cub-e.net/post/CRM-workflow-date-update-includes-saturdays-sundays.aspx) http://www.cub-e.net/post/Microsoft-Dynamics-CRM-JScript-Export-Tool-JavaScript.aspx (http://www.cub-e.net/post/Microsoft-Dynamics-CRM-JScript-Export-Tool-JavaScript.aspx) Daha fazla bilgiBu resmi kapat ![]() Topluluk Çözümleri ve İçeriğiyle İlgili Sorumluluğun Bulunmadığı Hakkında Microsoft Corporation ve/veya tedarikçileri bu sitede yer alan bilgi ve bağlantılı grafiklerin uygunluğu, güvenilirliği veya doğruluğu hakkında hiçbir beyanda bulunmamaktadır. Bütün bu bilgiler ve bağlantılı grafikler, hiçbir garanti verilmeden “olduğu gibi” sunulmaktadır. Microsoft ve/veya tedarikçileri bu bilgilere ve bağlantılı grafiklere ilişkin olarak, ticarete veya belirli bir amaca uygun olduklarına, ustalıkla hazırlandıklarına, mülkiyet hakkı ve ihlal etmemeye ilişkin yasal ve zımni garanti ve hükümler de dahil hiçbir garanti vermemekte ve hiçbir hükmü kabul etmemektedir. Dayanağının sözleşme, haksız fiil, ihmal, kusursuz sorumluluk veya sair bir neden olmasına bakılmaksızın, ve hatta Microsoft veya tedarikçilerinden herhangi biri zararın ortaya çıkma olasılığı hakkında bilgilendirilmiş olsa dahi, Microsoft ve/veya tedarikçilerinin hiçbir koşulda, kullanım imkansızlığı, veri veya kar kaybı da dahil ancak bunlarla sınırlı olmamak üzere bu web sitesinde yer alan bilgi ve bağlantılı grafiklerin kullanılmasından veya kullanılamamasından veya bunlardan biriyle herhangi bir şekilde bağlantılı olarak doğan doğrudan, dolaylı, cezai, özel, arızi, neticede oluşan veya sair hiçbir zarardan sorumlu olmadığını özellikle ve açıkça kabul ediyorsunuz. Not Bu, doğrudan Microsoft destek kuruluşu tarafından oluşturulan bir “FAST PUBLISH” makalesidir. Buradaki bilgiler, ortaya çıkan sorunları gidermek üzere olduğu gibi sağlanmaktadır. Mümkün olduğu kadar hızlı sunulmasının bir sonucu olarak malzemelerde yazım hataları bulunabilir ve bunlar bildirimde bulunulmadan daha sonra düzeltilebilir. Diğer hususlar için Kullanım Koşulları
(http://go.microsoft.com/fwlink/?LinkId=151500)
’na bakın. | Diğer Kaynaklar Diğer Destek Siteleri
ToplulukHemen Yardım Al
|























Üste