CRM 2016 Customizations etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
CRM 2016 Customizations etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

CRM 2016 Customizations - Aktivite Butonlarını Düzenleme

Restore Add Activity Buttons 


Aktivite butonları CRM 2013 ten itibaren default olarak ribbon bar da görünmez.  Bu işlemleri aşağıdaki ekran görüntüsünde görüldüğü gibi form üzerindeki Activities tabı altından yapabiliriz.


Bu butonları ribbon barında görebilmek için Ribbon WorkBench üzerinde aşağıdaki işlemleri yapmamız gerekir.

Not : Ribbon WorkBench solutionını buradan indirip crm e import etmeniz gerekecektir.

-- İlk olarak hangi entity formu üzerinde işlem yapacaksak o entitiye air bir solution oluşturalım . Ben account formu için çalışma yapacağım.

 İlk olarak Solutionlara gidelim. Setting > Customization > Solutions



Yeni solution oluşturmak için New butonuna basalım.


Solutionımızın bilgilerini girelim.Save butonuna basalım.

Gelen ekrandan Add Existing butonuna basalım ve sonrasında Entity i seçelim.

Gelen pencereden Accountu seçelim ve OK butonuna basalım.


Gelen ekranda Forms tabı altından Main formumuzu seçelim . Burada sadece Main formunu almak yeterli olacaktır. Finish butonuna basalım.

Missing Required Components penceresinde No , do not include required components i seçelim ve OK butonuna basalım.


Artık solutionımızı oluştıurmuş olduk .


Sıra geldi Ribbon WorkBench ile solutionımızı düzenlemeye;

Daha önce sistemimize yüklediğimiz RibbonWorkBench2013  managed solutionımızı acalım.





 Açılan pencereden Open Solution butonuna basalım ve oluşturduğumuz solutionı açalım.


 Ribbon görünümüne geçmek için Ribbon tabına tıklayalım.


 Daha sonra entitimizin Form görünümünü seçelim.


Bir sonraki adımda activite butonlarının bulunduğu Add tabına tıklayalım.


İlk olarak Task butonunu seçelim ve fare ile sağ tık yaptıktan sonra  Customize Command ı seçelim.


Orta bölümde bulunan Solution Elements altında Commands bölümünü genişletelim ve Task için geçerli olan Mscrm.AddTaskToPrimaryRecord u seçip , görünümünü düzenlemek için Edit Display Rules seçeneğini seçelim.


Display Rules penceresinden sağ panelden Mscrm.HideOnCommandBar ı seçelim ve Remove butonuna basalım.


Yapılan işlemleri tamamlamak için OK butonuna basalım.


Daha sonra bu yaptığımız işlemleri diğer aktivite butonları içinde yapalım . (Fax , Phone Call , Email , Letter , Service Activity , Appointment , Recurring Appointment )

İşlemlerimizi tamamladıktan sonra crme yansıması için Publish butonuna basalım.


Daha sonra işlemlerimizi test etmek için bir account kaydı açalım ve ribbonumuzu kontrol edelim.



Yukarıdaki ekran görüntüsünde görüldüğü gibi aktivite butonlarımız ribbonda görünür duruma gelmiştir.

CRM Customization - Teklif Ürününden Sipariş Ürününe Mapping

Mapping MSCRM fields from Quote Product to Sales Order Product


Teklifi siparişe dönüştürdüğümüzde teklif ürününden sipariş ürününe custom alanların eşlenmediğini görürüz. 

Kullanıcı Geliştirme Arayüzüne baktığımızda  Teklif Ürünü entitisinin ilişkilerine baktığımızda Sipariş Ürünü ile ilgili bir ilişki olmadığını görüyoruz. Bu gibi durumlarda aşağıdaki yöntemle mapping işlemini yapıyoruz.

İlk olarak teklif ürünü ile sipariş ürünü arasındakı mappingin guid değerini bulmamız gerekecek . Bunun için aşağıdaki sql sorgusu sonucu aralarındakı mapping işleminin idsini buluruz.

 
select E.TargetEntityName , E.SourceEntityName , E.EntityMapId
from  EntityMap as E
where E.TargetEntityName='salesorderdetail' 
  and E.SourceEntityName='quotedetail'

Bulduğumuz EntityMapId değerini aşağıdaki linke veriyoruz ve tarayıcıda açıyoruz.


Örnek URL



Açılan sayfada New butonuna basalım ve mapping olacak custom alanların mappinglerini yapalım.
 
Son olarak yaptığımız işlemleri publish yapalım.


Fırsat Ürünü Teklif Ürünü MappingId

select E.TargetEntityName , E.SourceEntityName , E.EntityMapId
from  EntityMap as E
where E.TargetEntityName='quotedetail'

  and E.SourceEntityName='opportunityproduct'

Sipariş Ürünü Fatura Ürünü MappingId

select E.TargetEntityName , E.SourceEntityName , E.EntityMapId
from  EntityMap as E
where E.TargetEntityName='invoicedetail'
  and E.SourceEntityName='salesorderdetail'