8 Ağustos 2013 Perşembe

Tablo Kalıtımı (Table Inheritance) Bölüm 1 : Terminoloji

Dynamics AX 2012 ile gelen yeni özelliklerden bir tanesi tablolarda kalıtım. Bu yazıdan başlayarak, başta MSDN olmak üzere çeşitli kaynaklardan derlediğim bilgileri ve kendi notlarımı birleştirerek bu konuyu anlatmaya çalışacağım.

Öncelikle aşağıda geçen örnek objeler arasındaki ilişkileri belirtelim:

  • Canli sınıfı Object sınıfından türemiş (extend) olsun.
  • Insan sınıfı de Canli sınıfından türemiş olsun.
  • Son olarak da Ogretmen sınıfı Insan sınıfından
Object > Canli > İnsan > Ogretmen


Terimler ve Anlamları


Ascendant(Soyun Atası)
Canli sınıfı Ogretmen sınıfının atasıdır.
Base(Temel)
Canli sınıfı Insan sınıfının temelidir.
Child(Alt)
Kalıtım konusunda bu terimin kullanılmaması gerekir. Bu terim genellikle tablolar arasındaki yabancı anahtar ilişkilerinden (foreign key relationships) bahsedilirken kullanılır.
Descendant(Soydan gelen)
Ogretmen sınıfı Canli sınıfının soyundan gelmektedir.
Derived(Türetik)
Insan sınıfı Canli sınıfından türetiktir.
Downcast
X++'daki "Ogretmen1 = Insan1 as Ogretmen;" ifadesi bir downcast ifadesidir. Derleme zamanında downcast için 'as' anahtar kelimesi gerekir.
extends
X++'da, extends anahtar kelimesi, AOT'deki herhangi bir sınıfın classDeclaration metodunda yer alır. Extends anahtar kelimesi, o sınıfın extends anahtar kelimesinden sonra gelen sınıftan türediğini gösterir.
Extends
AOT>Data Dictionary>Tables>MyTable>Properties kısmında yeralan Extends özelliği, MyTable'ın hangi tablodan türediğini belirtir.
Inherits(Devralmak)
Insan sınıfı Canli sınıfından ve Object sınıfından devralmıştır.
Parent(Ata)
Kalıtım konusunda bu terimin kullanılmaması gerekir. Bu terim genellikle tablolar arasındaki yabancı anahtar ilişkilerinden (foreign key relationships) bahsedilirken kullanılır.
Subtype(Alt tip)
Insan ve Ogretmen sınıfları Canli sınıfının alt tipleridir.
Supertype(Üst tip)
Canli sınıfı Insan ve Ogretmen sınıflarının üst tipidir.
upcast
X++'daki "Canli1 = Ogretmen1;" ifadesi bir upcast ifadesidir. Derleme zamanında upcast için 'as' anahtar kelimesi gerekmez.

Bir sonraki yazıda, "Dynamics AX 2012'de tablo kalıtımı ne zaman kullanılmalı" konusundan devam edeceğiz.

Hiç yorum yok:

Yorum Gönder