Aşağıdaki javascript metotlarını kullanarak girilen kelimenin sadece ilk harfini veya tamamını büyük harfe çevirebilirsiniz. Bu metotları text alanın onchange kısmında çağırmanız gereklidir.
CRM de alanın onchange ini tanımlarken parametreler ile alanın adını göndermeniz yeterlidir.
function FirstCharacterToUpperCase(fieldName) {
try {
var name = GetValue(fieldName);
if (name != null) {
var dizi = name.split(" ");
var sonHal = "";
for (i = 0; i < dizi.length; i++) {
var text = dizi[i];
if (text != null && text.length != 0) {
var ilkKarakter = text.substring(0, 1);
var devami = text.substring(1, text.length);
if (i != 0) {
sonHal += " " + ToUpperCaseStr(ilkKarakter) + devami.toLowerCase();
}
else {
sonHal += (ilkKarakter == "i" ? "İ" : ToUpperCaseStr(ilkKarakter)) + devami.toLowerCase();
}
}
}
SetValue(fieldName, sonHal);
}
}
catch (e) {
CommonAlert("An error occured in FirstCharacterToUpperCase Function.\nError: " + e.message);
}
}
function FullToUpperCase(fieldName) {
try {
var name = GetValue(fieldName);
if (name != null && name.length != 0) {
var sonHal = "";
for (var i = 0; i < name.length; i++) {
sonHal += (name[i] == "i" ? "İ" : name[i].toUpperCase());
}
SetValue(fieldName, sonHal);
}
}
catch (e) {
CommonAlert("An error occured in FullToUpperCase Function.\nError: " + e.message);
}
}
function GetValue(field) {
var attribute = GetAttribute(field);
if (attribute != null) {
return attribute.getValue();
}
return null;
}
function SetValue(field, value) {
var attribute = GetAttribute(field);
if (attribute != null) {
return attribute.setValue(value);
}
return null;
}
Dynamics 365 SQL - Global Optionset Sorgu
SQL 'de Global OptionSet değerlerini almak için aşağıdaki sorguyu kullanın.
SELECT OS.NAME, L.LABEL, AV.VALUE
FROM AttributePicklistValueAsIfPublishedLogicalView as AV
JOIN OptionSetAsIfPublishedLogicalView as OS ON AV.OptionSetId= OS.OptionSetId
JOIN LocalizedLabelAsIfPublishedLogicalView as L ON L.ObjectId = AV.AttributePicklistValueId
WHERE OS.ISGLOBAL = 1 AND OS.IsCustomOptionSet = 1
AND L.OBJECTCOLUMNNAME = 'DISPLAYNAME'
AND OS.NAME ='<Provide Global OptionSet Schema Name>'
SELECT OS.NAME, L.LABEL, AV.VALUE
FROM AttributePicklistValueAsIfPublishedLogicalView as AV
JOIN OptionSetAsIfPublishedLogicalView as OS ON AV.OptionSetId= OS.OptionSetId
JOIN LocalizedLabelAsIfPublishedLogicalView as L ON L.ObjectId = AV.AttributePicklistValueId
WHERE OS.ISGLOBAL = 1 AND OS.IsCustomOptionSet = 1
AND L.OBJECTCOLUMNNAME = 'DISPLAYNAME'
AND OS.NAME ='<Provide Global OptionSet Schema Name>'
Dynamics 365 - Hızlı Kampanyalar a Gelişmiş Bul Üzerinden Ulaşma
Hızlı Kampanyalar, doğrudan Gelişmiş Arama'dan bulamadığımız bir etkinliktir.
Kampanya Etkinliği kayıtlarını almak için Gelişmiş Bul'da aşağıdaki ölçütleri kullanın.
Kampanya Etkinliği kayıtlarını almak için Gelişmiş Bul'da aşağıdaki ölçütleri kullanın.
Dynamics 365 - QuickFindQueryRecordLimit exceeded
Varlıklar üzerinde text olarak arama yapıldıgında asagıdakı ekran görüntüsündekı hatayı alıyorsak çözüm için aşağıdaki yöntemi deneyelim.
Kullanıcı text ile arama yaptığında sonuç olarak 10.000 den daha fazla kayıt geri donuyorsa ilgili hatayı verir .
Hızlı Bulma Arama için CRM 'deki bu sınırlama nedeniyle, CRM Platformu bu sorunu atmaktadır.
Çözüm
Ayarlar - Yönetim - Sistem Ayarları ile Sistem Ayarları sayfası açılır.
Genel tabının altından Hızlı Bulma ' yı ayarla alanından Hızlı Bul kayıt sınırlarını etkinleştir seçeneğini Hayır olarak seçelim ve daha sonra Tamam butonuna tıklayalım.
Artık gerekli metni herhangi bir sorun olmadan arayabilirsiniz.
Kullanıcı text ile arama yaptığında sonuç olarak 10.000 den daha fazla kayıt geri donuyorsa ilgili hatayı verir .
Hızlı Bulma Arama için CRM 'deki bu sınırlama nedeniyle, CRM Platformu bu sorunu atmaktadır.
Çözüm
Ayarlar - Yönetim - Sistem Ayarları ile Sistem Ayarları sayfası açılır.
Genel tabının altından Hızlı Bulma ' yı ayarla alanından Hızlı Bul kayıt sınırlarını etkinleştir seçeneğini Hayır olarak seçelim ve daha sonra Tamam butonuna tıklayalım.
Artık gerekli metni herhangi bir sorun olmadan arayabilirsiniz.
Dynamics 365 - Createdon ve Overriddencreatedon
CRM servslerini kullanarak veri aktarma işlemlerinde CreatedOn alanına değer veremeyiz.
Bu aktarma işlemlerimde aşağıdaki yöntemleri kullanırız.
-- C# kod kullanılarak CRM içerinde veri oluşturma
-- CRM Veri Yönetimi kullanılarak txt/csv/xml dosyaları ile
Bu yöntemlerde createdon tarihine değer veremezsiniz ve bu alan otomatik olarak kayıdın oluşturulduğu tarihi alır .
Veri aktarımı yapılacağı zaman gereksinimlerden biri de CRM'deki kayıt oluşturma tarihinin eski sistemdeki kayıt oluşturma tarihiyle aynı olmasıdır..
Bunu CRM dekı baska bir alanda tutmak yerine sadece create için kullanılan OverrideCreatedOn alanında tutacağız. Bu durumda CRM tarafı OverrideCreatedOn alanını kullanacaktır .
Örnek Kod:
Entity account = new Entity("account");
account.Attributes["overriddencreatedon"] = new DateTime(2012, 2, 22);
account.Attributes["name"]=overriddencreatedon;
crmService.Create(item);
SQL Görünümü
Dynamics 365 - Durum Açıklaması Alanının Değerini Verme veya Güncelleme (How to update or set custom values for status code in CRM 2011/CRM 2013/CRM 2015 and CRM 2016 from UI)
CRM üzerindekı alan bilgileirnden statuscode alanı için değer değişimi yapamazsınız . Bunun için customization.xml yöntemini kullanarak alanların değerlerini verebilirz veya güncelleyebiliriz.
Öncelikle , kullanacağımız yöntem Microsoft tarafından desteklenmediği için (unsupported) işlemlerimize başlamadan önce yedek almamız gerekir. Aksi bir durumda yedekten geri yükleme yapabilelim.
Öncelikler hangi varlık üzerinde çalışacaksak ; o kayıt için bir çözüm oluşturalım ve alanlar kısmından statuscode değerini seçelim. Oluşturduğumuz bu çözümü dışarıya aktaralım.
Ben burada teklif varlığı için Lost , Canceled ve Revised alanlarını ekleyeceğim . Normalde CRM in default alanı olmasına rağmen bir müşterimizde kaldırılmıştı . Var olan value sunu kullanmak için bu yöntemi kullandık.
Aşağıdaki ekran görüntüsünde görüldüğü üzere Closed durumu için Lost , Canceled ve Revised durum açıklamaları alanımızın değerlerinde bulunmuyor.
Dışarıya aktarılan dosya .zip uzantılı olduğundan bu dosyayı dışarı çıkaralım.
Klasör içerisindeki customization.xml adlı dosyayı herhangi bir XML editörde açalım . Ben burada Visual Studio yu kullanacağım.
Daha sonra Entities tagı altından Entity kısmına gelerek hangi varlık için çalışma yapacaksak o alanı bulalım.Varlığımıza ait bilgilerin olduğu kısmı bulduysak ; attibutes tagının altından statuscode olan yeri bulalım.
Daha sonra aşağıdaki ekran görüntüsündekı gibi seçenekler bilgilerinin yer aldığı kısmı açalım.
Aşağıdaki ekran görüntüsündekı gibi seçeneklerimizin bilgilerini girelim.
Not : Burada hangi Durum için Durum Açıklaması gireceksek bunu state olan kısımda belirtmeliyiz.
Burada value değerini kendimiz verebiliyoruz.CRM üzerinden bu alan açsaydık bu değerleri değiştiremiyoruz veya istediğimiz bir value değeri veremiyoruz.
Değerlerimizi girdikten sonra xml dosyamızı kaydedelim ve programımızı kapatalım.
Bir sonraki adımda geriye dosyalarımıı yükleyeceğimiz için dışarıya çıkarttığımız dosyaları tekrar zip dosyası haline getirmeliyiz.
CRM import yoluyla çözümümüzü CRM e geri yükleyelim.
Yapılan işlemler sonucunda hata alınmazsa işlemimiz başarılı bir şekilde gerçekleşti demektir. Gidip CRM üzerinden kontrol edelim.
Aşağıdaki ekran görüntsünde görüldüğü gibi alanlarımızı başarılı bir şekilde ekledik.
Dynamics CRM in keyfini çıkarın.
Öncelikle , kullanacağımız yöntem Microsoft tarafından desteklenmediği için (unsupported) işlemlerimize başlamadan önce yedek almamız gerekir. Aksi bir durumda yedekten geri yükleme yapabilelim.
Öncelikler hangi varlık üzerinde çalışacaksak ; o kayıt için bir çözüm oluşturalım ve alanlar kısmından statuscode değerini seçelim. Oluşturduğumuz bu çözümü dışarıya aktaralım.
Ben burada teklif varlığı için Lost , Canceled ve Revised alanlarını ekleyeceğim . Normalde CRM in default alanı olmasına rağmen bir müşterimizde kaldırılmıştı . Var olan value sunu kullanmak için bu yöntemi kullandık.
Aşağıdaki ekran görüntüsünde görüldüğü üzere Closed durumu için Lost , Canceled ve Revised durum açıklamaları alanımızın değerlerinde bulunmuyor.
Dışarıya aktarılan dosya .zip uzantılı olduğundan bu dosyayı dışarı çıkaralım.
Klasör içerisindeki customization.xml adlı dosyayı herhangi bir XML editörde açalım . Ben burada Visual Studio yu kullanacağım.
Daha sonra Entities tagı altından Entity kısmına gelerek hangi varlık için çalışma yapacaksak o alanı bulalım.Varlığımıza ait bilgilerin olduğu kısmı bulduysak ; attibutes tagının altından statuscode olan yeri bulalım.
Daha sonra aşağıdaki ekran görüntüsündekı gibi seçenekler bilgilerinin yer aldığı kısmı açalım.
Aşağıdaki ekran görüntüsündekı gibi seçeneklerimizin bilgilerini girelim.
Not : Burada hangi Durum için Durum Açıklaması gireceksek bunu state olan kısımda belirtmeliyiz.
Burada value değerini kendimiz verebiliyoruz.CRM üzerinden bu alan açsaydık bu değerleri değiştiremiyoruz veya istediğimiz bir value değeri veremiyoruz.
Değerlerimizi girdikten sonra xml dosyamızı kaydedelim ve programımızı kapatalım.
Bir sonraki adımda geriye dosyalarımıı yükleyeceğimiz için dışarıya çıkarttığımız dosyaları tekrar zip dosyası haline getirmeliyiz.
CRM import yoluyla çözümümüzü CRM e geri yükleyelim.
Yapılan işlemler sonucunda hata alınmazsa işlemimiz başarılı bir şekilde gerçekleşti demektir. Gidip CRM üzerinden kontrol edelim.
Aşağıdaki ekran görüntsünde görüldüğü gibi alanlarımızı başarılı bir şekilde ekledik.
Dynamics CRM in keyfini çıkarın.
Dynamics 365 Outlook - Hata "Sayfanın CRM sunucusundan alınması bekleniyor." (Waiting for a page to be retrieved from a CRM server")
Hata
Microsoft Outlook üzerinden Microsoft Dynamics 365 kullanırken organizasyonun bilgilerinin bulundugu klasörler üzerine gelinildiğinde ; görünüm de hiçbir veri gelmez ve "Sayfanın CRM sunucusundan alınması bekleniyor." şeklinde bir uyarı verilir . Beklenildiğinde de hiçbir zman veriler gelmez.
Sebep
Microsoft Outlook Ekim 2017 güvenlik güncelleştirmesi sonucunda , uygulama ile ilgili önemli bir güvenlik açığını gidermek üzere outlook dolaşımı devre dışı bırakır ve bu nedenle eklentinin başarısız olmasına neden olur .
Çözüm
Bu hatanın düzeltilmesi için Regedit ten bir key eklemek gerekiyor.
Aşağıdaki kayıt defteri anahtarı, Microsoft Outlook'un yüklü sürümüne bağlıdır
Microsoft Outlook 2016:
[HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Security] "EnableRoamingFolderHomepages"=dword:00000002 Microsoft Outlook 2013: [HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Outlook\Security] "EnableRoamingFolderHomepages"=dword:00000002 Microsoft Outlook 2010: [HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Outlook\Security] "EnableRoamingFolderHomepages"=dword:00000002
Daha fazla bilgi için ilgili makaleyi inceleyebilirsiniz.
Kaydol:
Kayıtlar (Atom)




















