Axaptada hiyerarşık bir tabloyu ağaç yapısıyla yönetmek
Merhaba
Bazı durumlarda hiyerarşık yapılar kurmak zorunda kalabilirsiniz. Bunu yönetmenin en iyi yolu ağaç(Tree) yapısını kullanmaktır. Axapta standardında bir çok yerde ağaç yapısını görebilirsiniz. Örneğin: LedgerRowDefDesigner formunda sürükle bırakla çalışan bir ağaç yapısı mevcut. Ayrıca tutorial_Form_TreeControl örnek formu da size fikir verebilir.
Ben örneğimde bir hiyerarşi tablosunun form açıldığında ağaç yapısıyla görüntülenmesini ve ağaç elemanlarının (Node) bu form vasıtasıyla düzenlenmesinin (güncelleme , silme ve ekleme) nasıl yapılacağını anlatacağım.
Örnek olarak şöyle bir tablomuz olsun :
ETGItemGroupTable : ItemGroupId , ItemGroupName , ItemGroupLevel , ItemGroupIdParent
ItemGroupId , ItemGroupIdParent = EDT – DTItemGroupId
ItemGroupId , ItemGroupIdParent aynı EDT den oluşturuyoruz. Hiyerarşik yapıyı ItemGroupIdParent sayesinde kuracağız.
ItemGroupLevel Burada hiyerarşiyle pek ilgisi olmayan benim kurgumla alakalı olan bir seviye kodu var. Ben bu hiyerarşideki bütün elamanların birer seviye kodu olsun istiyorum ve bu kod 1-8 arasında olabilir. Formda gerekli kontrolleri buna göre yazıyorum.
Ulaşmak istediğim form görünümü şu şekilde
Yeni bir form oluşturup veri kaynağını ekleyip tasarımdada gerekli elemanları ekleyelim. Ağaç elemanımızı da ekledikten sonra bazı metodlar yazmamız gerekiyor onlara gecelim.