- Katılım
- 15 May 2013
- Konular
- 1,207
- Mesajlar
- 7,322
- Çözüm
- 6
- Online süresi
- 2mo 16d
- Reaksiyon Skoru
- 5,959
- Altın Konu
- 410
- Başarım Puanı
- 349
- MmoLira
- 45,966
- DevLira
- 3
ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!
JScript Web Kaynakları, Microsoft Dynamics CRM ile kullanacağınız en önemli web kaynak türlerinden biridir.
CRM'de JavaScript Uygulamaları
Form Olay Programlaması
Form Olay Programlaması, bir kullanıcının bir formu açması, bazı verileri değiştirmesi, sekmeler arasında geçiş yapması vb. gibi istemci tarafı davranışlarını ele almak için kullanılır. Bu tür istemci tarafı etkileşimlerini gerçekleştirmek için JavaScript kodu yazacak ve bunu CRM'ye bir JScript Web Kaynağı olarak ekleyeceksiniz. Ancak, yazacağınız JavaScript kodunun standart JavaScript DOM'u değil, Dynamics CRM'nin Xrm.Page modelini kullanması gerekir. Xrm.Page modelini kullanmak, Microsoft'un kodlama yöntemidir ve bu modeli kullanarak yazdığınız herhangi bir kodun CRM'nin gelecekteki sürümleriyle uyumlu olmasını sağlar.
Web Kaynakları
Form Olay Programlamasında kullanılmasının yanı sıra, JavaScript CRM'nin diğer uygulamalarında da kullanılır, örneğin:
Benzersiz bir URL ile Formları, Görünümleri ve Diyalogları açma.
Web servisleriyle etkileşim kurmak için OData ve SOAP uç noktalarını kullanma.
Diğer Web Kaynakları (HTML web kaynakları gibi) içinde JavaScript koduna referans verme.
Bu gibi durumlarda, JavaScript kodunuzu (Xrm.Page modelini kullanarak) yazıp CRM'ye bir JScript Web Kaynağı olarak ekleyebilirsiniz; bu kaynak daha sonra benzersiz bir URI ile her yerden referans edilebilir.
Şerit Özelleştirmeleri
Son olarak, JavaScript'in diğer yaygın kullanım alanlarından biri de şerit özelleştirmelerini ele almaktır, örneğin:
Bazı mantığa göre şerit düğmelerini görüntüleme/gizleme
Bazı mantığa göre şerit düğmelerini etkinleştirme/devre dışı bırakma
Belirli bir şerit düğmesine tıkladığınızda ne olacağını ele alma
Bu tür senaryoları ele almak için, JavaScript mantığınızı (Xrm.Page modelini kullanarak) yazıp daha sonra bir JScript Web Kaynağı olarak ekleyebilirsiniz. Bu Web Kaynağı daha sonra şerit düğmeleri XML'inde referans edilebilir ve bir şerit düğmesinin görüntülenip/gizlenmesi veya etkinleştirilip/devre dışı bırakılması gerekip gerekmediğini kontrol etmek veya tıklama olaylarını ele almak için hangi JScript dosyasındaki hangi yöntemin çağrılacağını belirtebiliriz.
Xrm.Page Nesne Modeli
Aşağıda, mevcut ad alanlarını, nesneleri ve koleksiyonlarını gösteren Xrm.Page nesne hiyerarşisi yer almaktadır. JScript kodu yazarken bu özellikleri kullanacaksınız.
Ad alanları
CRM'de JavaScript Uygulamaları
Form Olay Programlaması
Form Olay Programlaması, bir kullanıcının bir formu açması, bazı verileri değiştirmesi, sekmeler arasında geçiş yapması vb. gibi istemci tarafı davranışlarını ele almak için kullanılır. Bu tür istemci tarafı etkileşimlerini gerçekleştirmek için JavaScript kodu yazacak ve bunu CRM'ye bir JScript Web Kaynağı olarak ekleyeceksiniz. Ancak, yazacağınız JavaScript kodunun standart JavaScript DOM'u değil, Dynamics CRM'nin Xrm.Page modelini kullanması gerekir. Xrm.Page modelini kullanmak, Microsoft'un kodlama yöntemidir ve bu modeli kullanarak yazdığınız herhangi bir kodun CRM'nin gelecekteki sürümleriyle uyumlu olmasını sağlar.
Web Kaynakları
Form Olay Programlamasında kullanılmasının yanı sıra, JavaScript CRM'nin diğer uygulamalarında da kullanılır, örneğin:
Benzersiz bir URL ile Formları, Görünümleri ve Diyalogları açma.
Web servisleriyle etkileşim kurmak için OData ve SOAP uç noktalarını kullanma.
Diğer Web Kaynakları (HTML web kaynakları gibi) içinde JavaScript koduna referans verme.
Bu gibi durumlarda, JavaScript kodunuzu (Xrm.Page modelini kullanarak) yazıp CRM'ye bir JScript Web Kaynağı olarak ekleyebilirsiniz; bu kaynak daha sonra benzersiz bir URI ile her yerden referans edilebilir.
Şerit Özelleştirmeleri
Son olarak, JavaScript'in diğer yaygın kullanım alanlarından biri de şerit özelleştirmelerini ele almaktır, örneğin:
Bazı mantığa göre şerit düğmelerini görüntüleme/gizleme
Bazı mantığa göre şerit düğmelerini etkinleştirme/devre dışı bırakma
Belirli bir şerit düğmesine tıkladığınızda ne olacağını ele alma
Bu tür senaryoları ele almak için, JavaScript mantığınızı (Xrm.Page modelini kullanarak) yazıp daha sonra bir JScript Web Kaynağı olarak ekleyebilirsiniz. Bu Web Kaynağı daha sonra şerit düğmeleri XML'inde referans edilebilir ve bir şerit düğmesinin görüntülenip/gizlenmesi veya etkinleştirilip/devre dışı bırakılması gerekip gerekmediğini kontrol etmek veya tıklama olaylarını ele almak için hangi JScript dosyasındaki hangi yöntemin çağrılacağını belirtebiliriz.
Xrm.Page Nesne Modeli
Aşağıda, mevcut ad alanlarını, nesneleri ve koleksiyonlarını gösteren Xrm.Page nesne hiyerarşisi yer almaktadır. JScript kodu yazarken bu özellikleri kullanacaksınız.
Ad alanları
Nesneler
Koleksiyonlar
Form Programlamada Desteklenen Olaylar
Xrm.Page modelini kullanan Form Programlama, aşağıdaki form olaylarını işlemenize olanak tanır:
onLoad
onSave
onChange
TabStateChange
OnReadyStateComplete
PreSearch
İş Süreci Akışı kontrol olayları
Form Programlama Örneği
Bu örnekte, kullanıcının seçtiği Tercih Edilen İletişim Yöntemine göre İletişim formuna bazı doğrulamalar ekleyeceğiz. Bu nedenle, kullanıcı tercih ettiği yöntemi E-posta olarak seçerse, E-posta alanı zorunlu hale gelmeli ve benzer şekilde Telefon ve Faks alanları için de aynı durum geçerli olmalıdır.
Adım 1 − contacts.js adında bir JavaScript dosyası oluşturun ve aşağıdaki kodu kopyalayın.
Kod:
function validatePreferredMethodOfCommunication() {
//get the value of Preffered Method of Communication code
var prefferedContactMethodCode =
Xrm.Page.getAttribute('preferredcontactmetho dcode').getValue();
//if Preferred Method = Any, make all fields as non-mandatory
//else if Preferred Method = Phone, make Mobile Phone field mandatory
//and all other fields as non-mandatory
//else if Preferred Method = Fax, make Fax field mandatory
//and all other fields as non-mandatory
if(prefferedContactMethodCode == 1) {
clearAllMandatoryFields();
}
if(prefferedContactMethodCode == 2) {
clearAllMandatoryFields();
Xrm.Page.getAttribute('emailaddress1').setRequiredLevel('required');
} else if(prefferedContactMethodCode == 3) {
clearAllMandatoryFields();
Xrm.Page.getAttribute('mobilephone').setRequiredLevel('required');
} else if(prefferedContactMethodCode == 4) {
clearAllMandatoryFields();
Xrm.Page.getAttribute('fax').setRequiredLevel('required');
}
}
function clearAllMandatoryFields() {
//clear all mandatory fields
Xrm.Page.getAttribute('emailaddress1').setRequiredLevel('none');
Xrm.Page.getAttribute('mobilephone').setRequiredLevel('none');
Xrm.Page.getAttribute('fax').setRequiredLevel('none');
}
Adım 2 − Ayarlar → Özelleştirmeler → Sistemi Özelleştir → Kişi varlığı → Formlar → Ana Form yolunu izleyerek Kişi varlığı formunu açın.
Adım 3 − Form Özellikleri'ne tıklayın.
Adım 4 − Form Özellikleri penceresinden Ekle'ye tıklayın.
Adım 5 − Sonraki "Web Kaynağı Kaydını Ara" penceresinde, yeni bir web kaynağı oluşturduğumuz için "Yeni"ye tıklayın.
Adım 6 − Yeni Web Kaynağı penceresinde aşağıdaki bilgileri girin:
Ad − new_contacts.js
Görüntülenen Ad − contacts.js
Tür − JScript
Dosya Yükle − Yerel makinenizden oluşturduğunuz JavaScript dosyasını yükleyin.
7. Adım − Kaydet'e ve ardından Yayınla'ya tıklayın. Bundan sonra pencereyi kapatın ve Web Kaynağı Kaydını Ara penceresine geri döneceksiniz.
8. Adım − Burada artık new_contacts.js web kaynağını görebilirsiniz. Seçin ve Ekle'ye tıklayın. Yeni bir web kaynağı başarıyla eklediniz ve formda kaydettiniz.
Adım 9 − Şimdi, Tercih Edilen İletişim Yöntemi alanındaki değişikliğe bir olay işleyici ekleyeceğiz. Bu olay işleyici, az önce yazdığımız JavaScript fonksiyonunu çağıracaktır. Olay İşleyici bölümünden aşağıdaki seçenekleri seçin:
Kontrol − Tercih Edilen İletişim Yöntemi
Olay − Değişiklik Olduğunda
Ardından, aşağıdaki ekran görüntüsünde gösterildiği gibi Ekle düğmesine tıklayın.
Adım 10 − İşleyici Özellikleri'nin bir sonraki sayfasında, değişiklik olayının gerçekleşmesinde çağrılacak yöntemi belirteceğiz.
Kütüphane olarak new_contacts.js ve Fonksiyon olarak validatePreferredMethodOfCommunication'ı seçin. Tamam'ı tıklayın.
Adım 11 − Artık Form Kütüphanesini (Web Kaynağı) ve üzerinde kayıtlı etkinlikleri görebileceksiniz. Tamam'a tıklayın.
Adım 12 − Kaydet'e ve ardından Yayınla'ya tıklayın.
Adım 13 − Şimdi herhangi bir İletişim formunu açın ve Tercih Edilen İletişim Yöntemi'ni Telefon olarak ayarlayın. Bu, Cep Telefonu alanını zorunlu hale getirecektir. Şimdi herhangi bir cep telefonu numarası girmeden bu kişiyi kaydetmeye çalışırsanız, "Cep Telefonu için bir değer girmeniz gerekiyor" şeklinde bir hata mesajı alırsınız.










