Microsoft Dynamics 365 -Alternate Keys

Dynamics CRM’ e yeni gelen özelliklerden biri Alternate Keys – Alternatif Anahtar. Bu özellik sayesinde iki yada daha fazla organizasyondaki verileri sağlıklı bir şekilde senkronize edebiliyoruz. Dahası bu özelliği duplicate detection olarak da kullanabiliriz. Çünkü her kayıt için alternatif anahtar benzersiz olmak zorunda. Dikkat edilmesi gereken kısım ise alternatif anahtar olarak seçtiğimiz alan için benzer bir kayıt giremeyeceğimiz. Yani Contact varlığının PhoneNumber alanını alternate key olarak tanımlarsak aynı telefon numarasına sahip iki farklı kayıt oluşturamayacağız. Şimdi bu Alternatif Anahtar özelliğini kullanalım:

İlk önce Customization’ ı açıp Contact varlığımıza gidelim.

Daha sonra yukarıdan “New” diyoruz.

FirstName, LastName ve Email seçip add dedikten sonra kaydedip kapatıyoruz. Şimdi daha önce yarattığımız aynı isme ve eposta adresine sahip bir kayıt yaratmaya çalıştığımızda aşağıdaki hatayı alacağız.

Alternate Key Bilinmesi Gerekenler:

  • Alternatif anahtar birden fazla alanın birleşiminden oluşabilir.
  • Fazla miktarda veriniz varsa alternatif anahtar oluşturulması – o alan üzerinde mükerrer kayıt olup olmadığını kontrol ettiği için- uzun sürebilir.
  • Alternatif anahtar benzersiz olması gerektiğinden benzer değere sahip bir kayıt oluşturamazsınız.
  • Alternatif anahtar olarak belirlenmiş alanlardan mükerrer olan kayıtlar var ise alternatif key oluşturma işlemi başarısız olur. Bu işlemin başarılı olup olmadığını kontrol etmek için Contact>Keys kısmından oluşturduğumuz alternate key kaydının durumu(status) aktif olmalıdır.
  • Alternate Key veritabanı seviyesinde uniq nonclustered index oluşturur.

CREATE UNIQUE INDEX [ndx_for_entitykey_packt_NameandEmail]
ON [ContactBase]
([EMailAddress1] ASC, [FirstName] ASC, [LastName] ASC)
INCLUDE ([ContactId])
WHERE [EMailAddress1] is not null
AND [FirstName] is not null
AND [LastName] is not null
WITH (FILLFACTOR = 80, MAXDOP = 4, SORT_IN_TEMPDB = ON)

Kaynak: