OAF Master – Detail Örneği

Share Button

Merhaba,

Bu yazıda OAF sayfalar için Master-Detail yapımını anlatacağım. Master-Detail giriş sayfası yapabilmek için, BC4J Entity Object ve View Object bileşenleri arasında bağ kurulması gerekiyor. Bu bağ View Link ve Association objeleri tarafından sağlanıyor.

1. Aşağıdaki SQL çalıştırılarak örnek için tablo yapıları oluşturulur. Burada dikkat edilmesi gereken nokta iki tablo arasında FOREIGN KEY tanımı yapılmıştır. Bu işlemle hem veri bütünlüğünü güvence altına alır hem de JDeveloper’dan objeleri oluştururken Association ve View Link objelerinin otomatik oluşması sağlanmıştır.

2. Daha önceden ayarları yapılmış JDeveloper projesi açılır ve projeye sağ tıklanıp New seçilir. Business Tier-> ADF Business Componenets -> Business Components from Tables ile devam edilir.

md_001

3.Oluşturduğumuz Tablolar için Entity Object seçimleri aşağıdaki gibi düzenlenir.

md_002

4.View Object objeleri aşağıdaki gibi düzenlenir.

md_003

5.Read-Only View Object kullanılmayacağı için Next ile devam edilir.

md_004

 

6. Application Module oluşturulur ve View Object’leri ekle tiki seçilir.

md_0057. Nihai durumda Model tarafı aşağıdaki gibi şekillenmiştir.

md_006

8. Otomatik oluşan XxPlayersFkAssoc nesnesine sağ tıklanır ve Edit ile devam edilir.

md_007

9.Master-Detail sayfalarda Detail kaydı Master kayda bağlayan referans alanın otomatik yönetilmesi için Association objesinin Composite olarak değiştirilmesi gerekmektedir. Bunun için aşağıdaki adımla devam edilir.

md_00810. Sayfayı oluşturmak için aşağıdaki adımlar sırasıyla uygulanır.

md_009

md_010

md_011

 

11. Oluşturulan MasterDetailPG sayfasına Controller Object tanımlanır.

md_012

12. Sayfayanın PageLayout Region’ı aşağıdaki gibi düzenlenir.

ID Window Title Title AM Definition
PageLayoutRN  Master-Detail Page  Master-Detail Page  xxntc.oracle.apps.per.md.server.XxMdAM

13. PageLayoutRN altına iki adet region eklenir ve özellikleri aşağıdaki gibi güncellenir.

ID Item Style Text
MasterHdrRN header  Teams

 

ID Item Style Text
DetailHdrRN header  Players

14. MasterHdrRN header region’ı altına yeni bir Region wizard kullanılarak aşağıdaki adımlarla eklenir.

md_013

md_014

md_015 md_016

md_017

 

15. DetailHdrRN header region’ı altına yeni bir Region wizard kullanılarak aşağıdaki adımlarla eklenir.

md_018

md_019

md_020

md_021

md_02216. XxPlayersEOVO2 table Region’ı altına tableActions eklenir.

md_023

17. TableActions altında oluşan Region1 altına yeni bir Item eklenir ve özellikleri aşağıdaki gibi güncellenir.

md_024

 

ID Item Style Prompt Action Type Event
AddPlayer  button  Add Player  firePartialAction  addPlayer

19. PageLayoutRN altına yeni bir Region oluşturulur ve özellikleri aşağıdaki gibi değiştirilir.

ID Region Style
PageButtonBarRN  pageButtonBar

20. PageButtonBarRN altına yeni bir item eklenir ve özellikleri aşağıdaki gibi güncellenir.

ID Item Style Prompt
Apply  submitButton  Save

21. XxPlayersEO ve XxTeamsEO entity objectleri java dosyasına create fonksiyonu oluşturulur.

md_026

md_027

 

22. Aşağıdaki kod düzenlemeleri yapılır.

MasterDetailPGCO.java

 

XxTeamsEOImpl.java

XxPlayersEOImpl.java

XxMdAMImpl.java

23. Sayfa çalıştırılır ve test edilir.

md_028

24. Sonuçlar test edilir.