Bu yazıda IFS ERP’e ait apilerde get fonksiyonunun kullanılmasını öğreneceğiz. IFS ERP, Oracle veri tabanını kullanan bir uygulamadır. Oracle’da yazılmış paketler ile işlem yapılmaktadır. Konuyu örnek senaryoları kullanarak anlaşılır bir şekilde aktarmaya çalışacağım. Kullanıma geçmeden önce “Api kavramı nedir?”, “IFS ERP Api nedir?”, “Get Fonksiyonu Nedir?” gibi soruların cevaplarını verelim.

Api Kavramı Nedir?

API (Application Programming Interface) Türkçe olarak Uygulama Programlama Arayüzü anlamına gelmektedir. Temel olarak api bir uygulamadaki fonksiyonalitenin kullanılmasına yaramaktadır. Bu bir veri alma işlemi veya bir işlem yaptırma olabilir. Örnek vermek gerekirse, kitaplara ait bilgilerinin bulunduğu bir uygulamaya api yardımıyla yeni bir kitap eklenebilir. Veya mevcut olan bir kitabın yazar bilgisi api ile çekilebilir. Apiler sayesinde uygulamaların kaynak koduna ve veri tabanına doğrudan erişim sağlanmasına gerek kalmaz.

IFS ERP Api Nedir?

IFS Api, PL/SQL dilinde yazılan paketlerdir. İçerisinde prosedürler ve fonksiyonlar bulmaktadır. Prosedürleri kullanarak veri tabanı katmanına ekleme, çıkarma, güncelleme ve benzeri işlemler yapılabilir. Ek bilgi olarak veri tabanı katmanına müdahale edilirken, direkt olarak SQL insert, update veya delete(DML) kullanılmamalıdır. Bu işlemler IFS ERP’nin paketleri tarafından yapılmalıdır.

Get Fonksiyonu Nedir?

IFS ERP’de bulunan get fonksiyonları veri getirmeye yaramaktadır. Bir tablodan bulunan alanı apinin get fonksiyonları kullanarak çekebilirsiniz. Api size bu alanı vermek için gerekli anahtar bilgiler isteyecektir. Örnek vermek gerekirse, Satış Siparişi Satırlarıyla ilgili bir rapor hazırlanması gerekiyor. Bu raporda satışın hangi para biriminden yapıldığı bilgisinin gerekli olduğunu farz edelim. Para birimi bilgisi Satış Sipariş Satırlarında bulunmamaktadır. Bu bilgiyi almak için normalde SQL Join veya Subquery işlemi yapmamız gerekmektedir. Fakat, IFS’in apilerinde bulunan get fonksiyonunu kullanarak bu işlemi basit bir şekilde yapabiliriz.

Get Fonksiyonu Kullanımı

Üst başlıkta verilen örneği inceleyerek get fonksiyonunun kullanımını görelim. Satış Sipariş Satırlarında bulunan verileri customer_order_line viewından alabiliriz. Para birimi customer_order viewında currency_code adıyla bulunmaktadır. IFS apilerine genel olarak view adının sonuna “_api” yazılarak ulaşılır. Alandaki veriye ulaşmak için ise “get_” yazdıktan sonra istenilen alanın adı yazılmalıdır. Bundan sonra, fonksiyonun istediği anahtar alanlar verilerek ilgili veriye erişebilir. Hangi anahtar alanların istendiğini parantez işaretini koyduğumuzda görebiliriz. Yukarıdaki örnek için gerekli anahtar alan sipariş numarasıdır. Sipariş numarasının customer_order_line viewındaki karşılığı order_no‘dur.

İfadenin yazılış biçimi  view_adı_api.get_istenilen_alan(anahtar alanlar) şeklide olmalıdır.

Sonuç olarak; customer_order_api.get_currency_code(order_no) ifadesini kullanarak ilgili alana erişebiliriz.

IFS ERP Api kullanımına ait görsel

Örnekler

Senaryo 1

Tedarikçi numarası T1065 olan cari için satın alma sipariş satırlarını getiren sorgunun yazılması.

  • Sorgu Viewı: purchase_order_line_part
  • İstenilen Alanlar: Malzeme No (part_no),  Miktar (buy_qty_due), Ölçü Birimi(buy_unit_meas)
  • Tedarikçi Bilgisinin Bulunduğu View: purchase_order
  • Tedarikçi Bilgisinin Bulunduğu Api: purchase_order_api 
  • Tedarikçi Bilgisinin Viewdaki Adı: vendor_no

Çözüm 1

IFS ERP Api kullanımına ait görsel

Senaryo 2

Satış yapılan ülkelerin sipariş satırlarını getiren sorgunun yazılması.

Bilgi: Bu senaryo için iç içe api kullanılarak ülkeye erişilmesi gerekmektedir. Satış Sipariş Satırlarından müşteri no alanı alınıp, müşteri ekranından ülke bilgisi alınmalıdır.

  • Sorgu Viewı: customer_order_line
  • İstenilen Alanlar: Malzeme No (catalog_no),  Miktar (buy_qty_due), Ölçü Birimi(sales_unit_meas), Müşteri_No (Api ile alınacak), Ülke (Api ile alınacak)
  • Müşteri No Bilgisinin Bulunduğu View: customer_order
  • Müşteri No Bilgisinin Bulunduğu Api: customer_order_api 
  • Müşteri No Bilgisinin Viewdaki Adı: customer_no
  • Ülke Bilgisinin Bulunduğu View: customer_info
  • Ülke Bilgisinin Bulunduğu Api: customer_info_api 
  • Ülke Bilgisinin Viewdaki Adı: country

Çözüm 2

Öncelikle müşteri no bilgisini çekilmesi, daha sonra müşteri no ile ülke bilgisinin çekilmesi gerekmektedir.

IFS ERP Api kullanımına ait görsel

IFS ERP ile ilgili daha fazla içeriğe buradan ulaşabilirsiniz.

Bir Yorum Bırakın