CRM 2013 - İş Kuralları (Business Rules)

Javascript kullanmadan alan validasyonları :)

CRM 2013 ile birlikte javascript ile yaptığımız bazı işlemleri İş Kurallı (Business Rules) adında bir yenilikle CRM arayüzü kullanarak yapabileceğiz. İş Kuralları ile yapabileceğimiz işlemler aşağıdadır.


  • Alana değer verme
  • Alan zorunluluğu verme
  • Alan gizleme veye gösterme
  • Alanı aktif veya pasif yapma
  • Hata bildirimi gösterme
İş Kuralı oluşturmak için alan özelliklerinden İş Kuralı tabı altından Yeni diyerek iş kuralı oluşturabiliriz.Yukarıdaki  maddelere göre iş kuralı oluşturabiliriz.




CRM 2015 - Hoş Geldiniz Ekranını Kapatma (Turning off navigation tour)

CRM 2013 te  sisteme ilk bağlanıldığında Hoş Geldiniz ekranı olarak aşağıdaki resimdeki ekran gelmekteydi . Bunun üzerinde "Bunu bir daha gösterme" seçeneğini işaretlesek bile tarayıcının cookilerini sildiğimizde veya başka bir tarayıcıdan CRM e giriş yaptığımızda bu ekran yine gelmekteydi.

CRM 2013 HoşGeldiniz Ekranı

CRM 2015 HoşGeldiniz Ekranı

Artık CRM 2015 te bu ekranın gösterilip gösterilmemesi konusunda bir ayar eklenmiştir.

Ayarlar - Yönetim - Sistem Ayarları ndan Genel tabı altından "Kullanıcıların hoş geldiniz ekranını görüp görmeyeceğini ayarlama" kısmından Hayır diyerek bu ekranın bir daha gelmemesini sağlayabiliriz.



CRM 2015 - İş Kuralı Yenilikleri ( Business Rules Enhancement )

MS Dynamics CRM 2015 versiyonu ile birlikte iş kuralları özelliklerine var olan özellikleri dışında aşağıdaki konularda yenilik getirmiştir.



  • Default Değer Verme ( Set default value )
  • Server Side Kod Desteği ( Support for Server Side logic)
  • OR Operatör Desteği ( Support for OR operator)
  • ELSE Koşulu Desteği ( Support for else)

Default Değer Verme

CRM üzerinde yapılan işlemlerde yazılan iş kuralına göre değer setlemeye yarar.

Örneğin , fırsat yaratıldığında fiyat listesi alanının sabit olarak bir değer set etmek istiyorsak , bu yöntem işimizi kolaylaştıracaktır.


Fırsat yaratıldığında fiyat listesi alanına USD Fiyat Listesi değerini setleyecektir.


Bu yöntem ile otomatik olarak default değer atama işlemleri oldukça kullanışlı olacaktır.

Server Side da Çalışma Desteği

Server side da yazılan kod ile de çalışması eklenmiştir. Bunun için kapsam alanından Varlık değerini seçmemiz gerekir.




Aşağıdaki kodumuzu çalıştırdığımızda Fiyat Listesi ve Başlık alanlarına değer vermememize karşılık İş Kuralı ile değer atanmıştır.

Opportunity firsat = new Opportunity();
crmService.Create(firsat);




OR Operatör Desteği

OR logical operatoru desteği sağlanmıştır . Artık AND /OR operatorleri kullanılmaktadır.

ELSE Koşulu Desteği

Koşul yazımında ELSE desteği verilmiştir.




CRM 2015 - Upsert Akış Şeması

Aşağıdaki akış şeması Upsert metodunun nasıl çalıştığını gösterir.


CRM 2015 - Alternate Key

ERP gibi farklı sistemlerle senkronizasyon olarak çalışan CRM lerde  , CRM i güncellemek için CRM deki gu id değerini ikincil sistemde saklamamız gerekiyordu . MS CRM 2015 Update 1 ile bu konu daha kolay bir yol aldı. ERP deki unique key imizi crm de bir alanda saklayıp bu alan üzerinden güncelleme işlemlerimizi yapıyoruz.

CRM UI ile Alternate Key Oluşturma

Ayarlar - Özelleştirmeler - Sistem Özelleştirmeleri altından key gireceğimiz entitimizi seçelim. Entitimizi genişlettiğimizde Anahtarlar alanına tıklayalım ve yandaki tabdan Yeni diyerek bir key oluşturalım.


Açılan pencereden Alternate Key imizi tanımlayalım.


Alternate Key de aşağıdaki tipleri kullanabiliriz.

String
Integer
Decimal

 NOT : Datetime, lookup , optionset alanlar için alternate keyi kullanamayız.

UpsertRequest Çalışma Şekli



UpsertRequest ile Alternate Key Kullanımı 

KeyAttributeCollection keys = new KeyAttributeCollection();
keys.Add("accountnumber", "ERP-12345");

 Entity accountEntity = new Entity("account",keys);
 accountEntity["name"] = "Gökhan MENTEŞE";
  accountEntity["fax"] = "1234579856";

 UpsertRequest upreq = new UpsertRequest()
 {
      Target = accountEntity
 };
 UpsertResponse resp = (UpsertResponse)crmService.Execute(upreq);

  if (resp.RecordCreated)
   {
        // Kayıt olusturuldu
   }
   else
    {
         // Kayıt güncellendi.
    }

Firma Numarası ERP-12345 adlı kayıt olmadığı için sistemde yeni bir firma kayıtı oluşturuldu.



Yukarıdaki kodumuzu aşağıdaki gibi değiştirdiğimizde , bu sefer sistemde kayıt olacağı için ilgili kayıdı güncelleme işlemi yapacaktır.

           KeyAttributeCollection keys = new KeyAttributeCollection();
            keys.Add("accountnumber", "ERP-12345");

            Entity accountEntity = new Entity("account",keys);
            accountEntity["name"] = "Gökhan MENTEŞE";
            accountEntity["fax"] = "1234579856";
            accountEntity["telephone1"] = "552-8795621";

            UpsertRequest upreq = new UpsertRequest()
            {
                Target = accountEntity
            };
            UpsertResponse resp = (UpsertResponse)crmService.Execute(upreq);

            if (resp.RecordCreated)
            {
                // Kayıt olusturuldu
            }
            else
            {
                // Kayıt güncellendi.
            }




Alternate Key ile Farklı Kayıt Üzerinde İşlem Yapma

Aşağıdaki kod da , ilgili kişi kayıdı oluştururken Firma alanını alternate key ile veriyoruz.Sistemde bulduğu değeri bu alana setliyor.

            KeyAttributeCollection keys = new KeyAttributeCollection();
            keys.Add("accountnumber", "ERP-12345");

            Entity contactEntity = new Entity("contact");
            contactEntity["firstname"] = "Gökhan";
            contactEntity["lastname"] = "MENTEŞE";
            contactEntity["fax"] = "1234579856";
            contactEntity["telephone1"] = "552-8795621";
            contactEntity["parentcustomerid"] = new EntityReference("account",keys);

            crmService.Create(contactEntity);



Yukarıdaki koda göre CRM de ERP-12345 adında bir firma bulamasaydı aşağıdaki hatayı verecekti.

    A record with the specified key values does not exist in account entity



CRM 2015 - Sonunda Hızlı Arama (Global Search)

CRM e giriş yapıldığında üstteki navigation bar da arama text box ı göreceksiniz.


Hızlı aramayı  Ayarlar - Yönetim - Sistem Ayarları ndan Genel tabı altından Aramayı Ayarla bölümünden configüre edebiliriz.


Arama varlıkların seçin kısmından Seç butonuna basarak aramayı hangi varlıkların kayıtlarından arayacağını seçebiliriz.Eğer değişiklik yaptıysanız Sistem Ayarları penceresinde Tamam butonuna basalım.

NOT : Arama filtresine en fazla 10 varlık ekleyebiliyoruz.




Yukarıda varlıklara Anket varlığını eklemiştik . Arama filtrelerine yansıdığını görelim.


Örnek bir arama yapalım.




CRM 2015 - Temalar (Themes)

Microsoft Dynamics CRM 2015 Update 1 sürümüyle birlikte CRM Temalar adında yeni bir arayüz çıkardı . Bu arayüz ile Micrsoftun desteklediği şekilde CRM formunun renklerini değiştirebiliyoruz.

Ayarlar - Özelleştirmeler altından Temalar a ulaşabiliyoruz.



CRM kurulumuyla birlikte CRM Default Theme adında read-only bir tema gelmektedir . Bu tema üzerinde değişiklik yapamıyoruz ama Kopyala seçeneği ile temayı kopyalayabiliyoruz.

Tema Kopyalama

CRM de var olan bir temayı açtıktan sonra form üzerindeki ribbondaki Kopyala butonuna basarak temayı kopyalabiliyoruz.



 Önizleme butonuna basarak tema üzerindeki yaptığımız değişiklikleri görebiliriz.




Tema Yayımlama

Temalar alanından hangi temayı kullanacaksak o temayı seçelim ve Temayı Yayımla butonuna basalım.

Aşağıdaki örnekte CRM in default temasını kullanırlen kendi yaptığımız tamayı yayımladık ve crm  ikinci ekran görüntüsü halini aldı.





Yeni Tema Tanımlama

Ayarlar - Özelleştirmeler - Temalar - New diyerek yeni bir tema oluşturabiliriz.


Açılan Yeni Tema formundaki ilgili alanları doldurup kaydedince yeni bir tema tanımlamış oluruz.


Dynamics CRM Theme Generator

Dinamik olarak tema tanımlamak için   Dynamics CRM Theme Generator toolunu kullanabiriz.

Bu tool üzerinden değişikliklerimizi yaptıktan sonra istersek değişiklikleri CRM formuna elle gireriz istersen Export Theme diyerek excel çıktısını alabiliriz. Daha sonra excel çıktıyı CRM e import edebiliriz.





CRM 2016 - Çapraz Satış (Cross Selling)

MS CRM 2016 ile birlikte teklif ve sipariş formlarında çapraz satış yapılması sağlanmıştır.

Çapraz Satış Nedir ?

İngilizcesi Cross Selling olan çapraz satış, müşterilerin satın aldıkları ürünün yanında o ürün ile ilgili farklı bir ürünü daha satmak anlamına gelir. Bunlar çoğu zaman tamamlayıcı ürünlerdir.

Aşağıdaki maddeler çapraz satışa bir örnek olarak verilebilir.

  •  Not defteri satın alan bir müşteriye, bunun yanında kalem de satmak 
  •  Hamburger alan kişiye patates ve kola satmak


Çapraz Satış için Ürün Girme

Örnek senaryomuzda not defteri olan bir müşteriye çapraz satış olarak kalem ve silgi satmayı uygulayacağız.

İlk olarak  Not Defteri ürününü Kalem ve Silgi ürünüyle çapraz satış olarak ilişkilendirelim.
Ürünler den Not Defteri ürününü açalım ve Ürün İlişkileri alanından + butonuna basalım.


Açılan Ürün İlişkisi penceresinden İlgili Ürün alanından Kalem ürünümüzü seçelim.


Satış İlişkisi Türü alanından Çapraz Satış seçelim.


Yön alanından İki Yönlü yü seçelim .Burada isteğe bağlı Tek Yönlü de seçilebilir.


Daha sonra Kaydet butonuna basalım ve  girdiğimiz verileri kaydedelim.


Kalem için yaptığımız adımları Silgi içinde yapalım.


Yaptığıız işlemlerden sonra Not Defteri ürünü üzerinde Ürün İlişkileri kısmında eklediğimiz ürünleri göreceğiz.


Bir sonraki adımda daha önce teklife eklediğimiz Not Defteri ürünü üzerinden Kalem ve Silgi ürünlerini Çapraz Satış yöntemini kullanarak ekleyeceğiz.

Teklifimizi açalım ve Ürünler alanınan Not Defteri ürünü üzerine gelerek Öneriler kolonunda çıkan Öneriler linkine tıklayalım.


Açılan Öneriler penceresinden ilgili ürünleri seçelim.



Kalem ve Silgi ürünün seçtikten sonra Listeye Ekle bıtonuna basarak teklife ürün olarak ekleyelim.



Teklif formuna geri dönelim ve Ürünler alanında Kalem ve Silgi ürünlerininde geldiğini görelim .
Bu şekilde çapraz satış yapmış olduk.







Office 365 - Kullanıcı için Şifre Güncelleme Süresini Maximum Yapma

Office 365 portaline giriş yaptıktan sonra Kullanıcılar altından Etkin Kullanıcılar ı seçelim.



Açılan Etkin Kullanıcılar sayfasında Kullanıcılarınız için parola süresi sonu ilkesini değiştirin alanından Şimdi değiştir yazısına tıklayalım.


Açılan Parolalar sayfasından Parolaların süresi dolmadan öncei gün sayısı alanından parolaların ne sıklıkta değiştirileceği girilir. Bu kısımda enfazla 730 girileceği için biz en uzun süreyi verelim ve Kaydet butonuna basalım değişiklikleri kaydedelim.



CRM 2015 - Kullanıcı Ayarları Nerede ?

CRM 2015 versiyonu ile birikte Kulanıcılar  ve Kullanıcılarla alakalı (güvenlik rolleri , takımlar ) Ayarlar - Sistem  -  Güvenlik  altına alınmıştır.Daha önceden Ayarlar  - Sistem -  Yönetim  altında yer almaktaydı.


CRM 2011 ve CRM 2013 için

Ayarlar - Sistem - Yönetim
Settings - System - Administration



CRM 2015 ve CRM 2016

Ayarlar - Sistem - Güvenlik
Settings - System - Security