10 Aralık 2015 Perşembe

AXAPTA 2012 TABLE INHERIT-EXTEND


Merhaba,

Bu makalemizde Axapta 2012 ile birlikte gelen ve Axapta 2009 da olmayan yeni bir tablo özelliğinden bahsedeceğiz. Yeni Axapta ile artık tablolar inherit veya extend edilebilme özelliğine sahip oldular. Temelde bulunan tabloda kendinden türetilecek olan tüm tablolar için ortak olan alanlar yer alır. Türetilen tablo ise bu temel alanların yanında amacına uygun başka alanlar içermelidir. Tablo özellikleri arasında bulunan Support Inheritance  ve Extends özelliklerini kullanarak tablolarımızı türetebiliriz. Burada önemli olan bu özellikleri doğru yerlerde kullanmaktır. Bu özellikleri kullanabilmek için bazı kurallar vardır. Bunlar;
  •   Sadece ve sadece regular table larda kullanabiliriz.
  •   Support Inheritance  ve Extends özellikleri set edebilmemiz için oluşturduğumuz tabloda hiçbir alan bulunmaması gerekir.
  •   Child tablolarla ilişkiyi kurabilmek amacıyla root tablosunda Int64 tipinde adı InstanceRelationType olan bir alan oluşturmamız gerekmektedir.
Şimdi ise bu özelliklerin nasıl kullanıldığını göstermek için bir örnek yapalım. Alttaki resimdeki yapıyı kurmaya çalışalım. Burada BasicInfo bizim root tablomuz, EmpTable ve CompanyTable ise child tablolarımızdır.

AXAPTA 2012 TABLE INHERIT-EXTEND

İlk önce root tablomuzdan başlamamız gerekir. AOT ta yeni bir tablo oluşturalım, Support Inheritance  özelliğini Yes olarak set edelim ve kaydedelim. Kaydettiğimizde alttaki gibi bir hata atmaktadır. Bu hata bize bir sonraki aşamada ne yapmamız gerektiğini bildiriyor. 

AXAPTA 2012 TABLE INHERIT-EXTEND

Hata ekranında da belirttiği gibi root tablomuzda InstanceRelationType adında Int64 tipinde bir alan açalım ve tablodaki InstanceRelationType özelliğinde bu alanı seçelim. Ardından da diğer alanlarımızı açarak root tablomuzu tamamlayalım.

AXAPTA 2012 TABLE INHERIT-EXTEND

Şimdi child tablolarımızı oluşturalım. AOT da iki tane tablo oluşturduktan sonra bu iki tablo için Support Inheritance  Yes ve ardından Extends özelliklerini  root tablomuz olan BasicInfo olarak set edelim. Ardından da diğer alanları oluşturarak child tablolarımızı tamamlayalım.

AXAPTA 2012 TABLE INHERIT-EXTEND

Şimdi ise child tablolarına birer kayıt girelim.

AXAPTA 2012 TABLE INHERIT-EXTEND


AXAPTA 2012 TABLE INHERIT-EXTEND


Child tablolarına kayıtları girdikten sonra BasicInfo tablosunun son hali.

AXAPTA 2012 TABLE INHERIT-EXTEND




Hiç yorum yok:

Yorum Gönder