24 Ekim 2014 Cuma

Dynamics AX 2012 ile OData kullanımı

Merhabalar,

Bu yazımda sizlere Dynamics AX 2012 de OData kullanımını anlatacağım. Öncelikle "OData nedir ?" sorusuna cevap vermekle başlayalım. Açılımı Open Data Protocol'dür. Kısaca veritabanına web(http) üzerinden sorguda bulunmanıza yarar.

Normalde uzaktaki bir veritabanından web, mobil veya bir desktop uygulamadan sorgu yapabilmek için bir web servisiniz olması gerekir, bu sayede verinin bütünlüğünü ve güvenliğini sağlayabilirsiniz. OData ise web servis yazılmasına gerek kalmadan direkt olarak veritabanına http üzerinden sorgu çekebilmenize yarar.


Daha iyi anlamanız için örnek bir OData sorgu linki "http://crmServer/AdventureWorksCycle/XRMServices/2011/OrganizationData.svc/ContactSet?$select=FirstName,LastName".

Bu sorgu sonucunda bir xml çıktısında isim ve soyisim değeri döner. Dynamics AX 2012 de OData yı kullanabilmek için aşağıdaki adımları izlemelisiniz.

"Organizasyon yönetimi > Kurulum > Belge yönetimi > Belgenin veri kaynakları" formunu için.
(Organization Administration > Setup > Document management > Document data sources.)

1

Açılan formda "New" butonuna basıp yeni bir kayıt yaratalım. Doldurmamız gereken kolonları sırasıyla inceleyelim.
  1. Modül: Burada kullanmak istediğimiz AOT Query'sinin hangi modülde olduğunu belirtiyoruz. Örneğin "ProjTable" query'si için "Projeler" modülünü seçmemiz gerek.
  2. Veri kaynağı türü: Burada sorgu türü olarak ne kullanılacağı belirleniyor. Seçilebilecek 3 seçenek mevcut.
    1. Servis: Halihazırda Ax da bulunan bir servisi seçebilirsiniz.
    2. Query reference: Ax içinde bir AOT query'si seçebilirsiniz.
    3. Custom query: Yine ax içinde bir AOT query'si seçiyorsunuz. Fakat bu sefer query'e yukarıdaki "Sorguyu düzenle" butonu ile herhangi bir kriter verebiliyorsunuz.
  3. Veri kaynağı adı: Bu kısımda sorgunuza bir isim vermeniz gerek. Buradaki isim önemli. Çünkü daha sonra web üzerinden sorguyu çağırırken buradaki ismi kullanacağız.
  4. Son olarak "Aktif" seçeneğini işaretleyerek işlemi tamamlıyoruz.
Artık AOS'un yüklü olduğu server'a erişebileceğiniz bir bilgisayarda tarayıcınızı açıp aşağıdaki linki girin:

http://192.168.0.191:8101/DynamicsAx/Services/ODataQueryService
  1. Buradaki 191 ile biten IP, AOS'un yüklü olduğu makine.
  2. 8101 standart port değeri. Herhangi bir değişiklik yapılmamış ise standartta bu kullanılır.
Linki girdikten sonra tarayıcınız kullanıcı adı ve şifre isteyebilir. Bu bilgileri giriniz. Ardından ekranınıza şöyle bir xml çıktısı gelmesi gerekli.

2

Burada kullanıma hazır olan(Aktif işaretlenmiş) sorguları görüyoruz. Biz yeni eklediğimiz ProjTable sorgusu için linkin sonuna sorgunun ismini yazıyoruz.

http://192.168.0.191:8101/DynamicsAx/Services/ODataQueryService/ProjTable_Copy_1

Ax'ın standart "ProjTable" AOT query'sinin sonucunu xml olarak görebilirsiniz.

3 

Son olarak aşağıdaki adreslerde Ax OData sorgusunun excelden erişilmesi anlatılmış.
  1. http://technet.microsoft.com/en-us/library/dn198214.aspx
  2. http://dynamicsaxtipoftheday.com/2014/02/10/publish-queries-as-odata-document-sources-for-users-to-query-in-excel/
Son olarak bu adresten OData'nın AX da kullanımı ile ilgili detaylı bilgi ve Ax için mevcut kısıtlamalar hakkında detaylı bilgi edinebilirsiniz.

Şimdilik Hoşçakalın,
Güven Şahin.

Hiç yorum yok:

Yorum Gönder