IOrganizationService Create Metodu

Bu yazı 24 Mayıs 2019 tarihinde Medium/@dynamics365 altında yayınlanmıştır. 21 Mayıs 2020 tarihinde emregulcan.com altında taşınmıştır.

Merhaba,

Bu yazıda Dynamics 365 CE (CRM) SDK ‘da IOrganizationService interface ‘in sağlamış olduğu Create metodunu inceleyeceğiz.

Create metodu, Dynamics 365 CE (CRM) ‘de herhangi bir Entity (Varlık) üzerinde yeni bir kayıt oluşturmamızı sağlamaktadır. Temel mantık olarak ilgili Entity için geçerli olan database tablosuna yeni bir satır (Row) eklemektedir.

Dynamics 365 CE (CRM) ‘de direkt olarak database işlemleri yapılmamakta. Bu nedenle database üzerinde manuel yapacağınız herhangi bir Insert işlemi sistemin işleyişini olumsuz olarak etkileyecektir. Ayrıca manuel olarak Insert yapmanız durumunda, ilgili Entity (Varlık) için geçerli olan Plugin ya da Workflow (İş Akışları) tetiklenmeyeceği için sistem bütünlüğü bozulabilir.

Önemli Noktalar

  • Create metodu sadece 1 parametre almaktadır. Bu parametre Entity türünde, oluşturulacak olan Entity bilgisini içeren değerdir.
  • Create metodu oluşturulan kaydın Dynamics 365 CE (CRM) ID bilgisini GUID formatında döner.
  • Create metodu ile sadece 1 kayıt (Row) oluşturabiliriz.
  • İşlem yapan kullanıcı (IOrganizationService ‘i oluşturan kimlik sahibi ya da CallerId olarak verilmiş SystemUser), ilgili Entity (Varlık) üzerinde mutlaka Create ve Read yetkilerine sahip olmalıdır.
  • Oluşturulan kaydın CreatedBy (Oluşturan) ve Owner (Sahip)* alanları, IOrganizationService ‘i oluşturan kimlik bilgileri için geçerli olan kullanıcı olarak atanacaktır. Eğer istersek Entity kaydını oluştururken ownerid attribute ekleyerek kaydın sahiplik bilgisini değiştirebiliriz.
  • Create metodunu kullanabileceğimiz Entity (Varlık) güncel listesine buradan ulaşabilirsiniz.

* Owner (Sahip) bilgisinin olması için ilgili Entity (Varlık) ‘nin Ownership (Sahiplik) bilgisi User or Team (Kullanıcı veya Takım) olarak ayarlanmalıdır.

.NET Projesi – Örnek Kod

.NET projelerimizde Microsoft.CrmSdk.CoreAssemblies kütüphanelerini kullanarak Dynamics 365 CE (CRM) ‘de yeni bir kayıt oluşturabiliriz. Bu kütüphaneleri NuGet üzerinden projemize dahil edebiliriz.

Dynamics 365 CE (CRM) SDK kütüphanelerini projemize nasıl ekleyeceğimizi daha önce burada detaylı olarak anlatmıştım.

IOrganizationService.Create metodu
IOrganizationService.Create metodu

Yukarıdaki örnekte CreateContact isimli metoda parametre olarak gönderilen değerler ile contact Entity (Varlık) üzerinde yeni bir kayıt oluşturuyoruz.

Bu örnekte Late-bound Entity türünde işlem yaptım, daha önce Entity Nedir? başlıklı yazımda Entity, Early-bound ve Late-bound kavramlarını detaylı olarak anlatmıştım, ilgili yazıya buradan erişebilirsiniz.

Bu metodumuzu uygulamamızın içinde herhangi bir yerde kullanabiliriz.

IOrganizationService.Create metodu
IOrganizationService.Create metodu

Yukarıdaki ekran görüntüsünde görüldüğü üzere kaydımız oluştu ve bir ID değeri elde ettik.

Umarım faydalı bir yazı olmuştur.

IOrganizationService metotları için oluşturduğum Index yazısına buradan ulaşabilirsiniz.

Dynamics 365 CE (CRM) SDK konusunda ilgili tüm yazılara tek nokta üzerinden ulaşmak isterseniz http://www.emregulcan.com/dynamics365-sdk adresine bakabilirsiniz.

You may also like...

1 Response

  1. 2020-08-26

    […] önce IOrganizationService.Create metodunu incelemiştik. Bu yazıda anlattığım tüm önemli noktalar aynen CreateRequest için de […]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.

This site uses Akismet to reduce spam. Learn how your comment data is processed.