AXAPTA – 9 / VIEW OLUŞTURMA VE KULLANMA - Yazgelistir.com
Axapta üzerinde, Sql Server’dakine benzer görünümler oluşturabiliriz. Bir veya birden fazla tabloyu görünüme ekleyerek, sorgu olarak sadece bu görünümü çağırarak kolaylık sağlayabiliriz. Örneğin, yapılan bir form, rapor gibi çözümlerde sürekli kullanılan bir sorguyu bu objelerin kaynağı olarak her seferinde yeniden tanımlıyor olabilirsiniz. Bence bu çözüm tek tablo için değil de, birden fazla tablo kullanılarak oluşturulan sorgularda daha doğru kullanılır.
AXAPTA – 9
Yeni bir görünüm oluşturmak için, AOT (Uygulama Nesne Ağacı) üzerinde, Data Dictionary bölümünü açtığınızda, Views seçeneğini göreceksiniz. Burada Axapta tarafından yaratılmış hazır görünümler olduğu gibi, kendi özel görünümlerinizi de oluşturabilirsiniz. Yeni bir görünüm oluşturmak için, sağ tuşa basıp, New View seçeneğini kullanabilirsiniz.
Bu işlemi yaptığınızda elinizde boş bir görünüm olacaktır. Bir örnek ile seçeneklerini anlayalım. Örneğimiz, maddeler tablosu ve madde grupları tablosunu birleştirsin. Bu iki tablo birçok sorguda beraber kullanılabilir.
Maddeler tablosu adı: InventTable
Madde grupları tablosu adı: InventItemGroup
Bu iki tablo birbirleri arasında, madde grubu numarası sahaları ile ilişkili durumda. İlişki sağlayan sahalar;
InventTable.ItemGroupId = InventItemGroup.ItemGroupId
View’in özellikleri dört grup altında toplanmıştır.
Metadata: Tablo / tabloları veri kaynağı olarak burada tanımlayabiliriz. Metadata üzerinde tanımlayabileceğimiz nitelikler:
Title: Bu sorgunun görünüm işlemlerinde çıkacak tanımı.
Interactive: Sorgu kullanıldığında, tablolar üzerindeki tüm sahalarda kriter verilebilir durumdadır. Kriter verme özelliğini iptal etmek istersiniz bu özelliği No olarak belirlemeniz gerekmektedir.
Metadata içerisinde bulunan DataSource özelliği ile sorguda kullanılacak tabloyu tanımlayabiliriz. Bunun için sağ tuş ile Yeni DataSource’u seçmemiz gerekir. Eklenen DataSource’un özellikleri:
Name: DataSource’a isim verilebilir.
Table: DataSource’un hangi tabloya ait olacağı bilgisi verilir.
Örneğimize göre bu iki özelliğide InventTable olarak belirleyelim.
Yeni eklediğimiz InventTable DataSource’unun sahalarını görebilir, sorguda kullanılmasını istediğimiz özel kriterlerini belirleyebiliriz. Ayrıca DataSource özelliğini kullanarak, InventTable’ın altına yeni bir DataSource tanımlayabiliriz. Bu özelliği kullanarak, yeni bir DataSource açıp InventItemGroup tablosunu tanımlayalım. İkinci eklediğimiz bu DataSource’un yeni eklenen Relations özelliğini göreceksiniz. Eğer bu özelliğe Yes derseniz, bu iki tablo üzerinde tanımlanmış ilişkiler otomatik olarak aktarılacaktır. No olarak belirleseniz bile, kendiniz sonradan manuel olarak ilişki tanımlayabilirsiniz.
InventItemGroup’u ekleyip, Relations özelliğine Yes dediğiniz zaman, iki tablo üzerinde ilişkinin, InventItemGroup kaynağının Relations sekmesinde tanımlandığını göreceksiniz. Otomatik olarak tanımlatmasaydık, Relations sekmesinde New Relation deyip manuel olarak ilişki / ilişkilerini tanımlayabilirdik.
Aynı şekilde, sonradan eklenen DataSource’larında sahalarını görebilir, sorguda kullanılmasını istediğimiz özel kriterlerini belirleyebiliriz. Ve bir alt seviyesine yeni bir DataSource ekleyebiliriz.
Veri kaynaklarını buradan tanımlayabiliriz.
Fields: Bu sekme, veri kaynaklarını tanımlamış olsanız bile ilk aşamada boş gelecektir. Sorgu sonucunda görmek istediğiniz sahaları ilgili veri kaynağı / kaynaklarından sürükle – bırak yöntemi ile bu sekme üzerine eklediğinizde, sorgu sonucunda almak istediğiniz sahaları belirleyebilirsiniz.
Field Groups: Bu sekme altında AutoReport ve AutoLookUp sekmelerini göreceksiniz. Fields sekmesinde tanımladığınız saha / sahaları sürükle bırak yöntemi ile bu sekmeler üzerine bırakabilirsiniz. AutoReport üzerine tanımladığınız sahalar, otomatik rapor bu görünüm üzerinden yapılmak istediğinde bu sahalar grup halinde çıkacaktır. AutoLookUp üzerine tanımladığınız sahalar, görünüm üzerinde look up yapmak istediğinizde çıkacaktır.
Method: Bu görünüm üzerinde çalışacak, görünüm kaynak olarak tanımlandığında kullanılabilecek metotları buradan tanımlayabilirsiniz. Ayrıca burada üzerine yazılabilir metotlarda tanımlayabilirsiniz.
Örneğimiz sonucunda oluşturduğumuz görünümün ekran görüntüsü aşağıdaki gibi olacaktır.
Oluşturduğumuz bu görünümü bir rapor içinde kullanalım. Yeni bir rapor oluşturalım ve rapora eklediğimiz DataSource’un Table özelliğine Madde_MaddeGruplari (oluşturduğumuz görünüm adı) isimini verelim. Bu DataSource’un Fields sekmesini açtığımız zaman görünümde tanımladığımız sadece dört sahanın geldiğini göreceksiniz. Raporun tasarımının da bu DataSource’dan türetildiğini görebilirsiniz.
Raporu çalıştırdığınız zamanda sadece görünümde tanımladığınız sahalara kriter verebilirsiniz. Bu tablolar birçok sahaya sahiptir ancak burada görünümde tanımladığımız sahalar kullanılabilir. Rapor içinde de görünümü bir tabloymuş gibi kullanabilirsiniz.
Raporun sonuç olarak görüntüsü aşağıdaki gibi olacaktır.