OAF_開發系列04_實現OAF查詢4種不一樣的實現方式的比較和實現(案例)

2014-06-02 Created By BaoXinjianjava

1、摘要web


OAF實現查詢功能或需求,通常都會採用如下四種方式sql

(1). ResultBasedSearchoracle

最簡單的實現方式,將結果中某些欄位須要查詢的欄位的屬性search設定爲true便可app

(2). AutoCustomizationCriteria:SimpleSearchPanel & AdvancedSearchPannel框架

使用最多的查詢方式,存在兩種方式simple & advanced pannel測試

(3). 徹底客製化Search:查詢欄位Region - 按鈕Regoin - 結果Regionui

若是遇到很是複雜,查詢條件須要經過邏輯進行組合,就能夠採用這種方式,徹底客製化查詢spa

 

1. ResultBasedSearchorm

(1). 創建Query Region

(2). 在Query Region下創建Result Table Region

(3). 設定Item的屬性爲Research爲true

(4). 結構

       -Query

         -Result Table

           -Item 設定Research爲true

 

2. AutoCustomizationCriteria - SimpleSearchPanel

(1). 創建Query Region

(2). 在Query Region下創建Result Table Region

(3). 創建SimpleSearchPannel, 在其下創建messageComponentLayout,在創建Search Items

(4). 創建SimpleSearchMappings, 創建Mapping關係,Search Item和Result Item的關係

 

3. AutoCustomizationCriteria - AdvancedSearchPannel

    (1). 創建Query Region

    (2). 在Query Region下創建Result Table Region

    (3). 創建AdvancedSearchPannel, 在其下創建messageComponentLayout,在創建Search Items

    (4). 創建AdvancedSearchMappings, 創建Mapping關係,Search Item和Result Item的關係

 

4. 徹底客製化Search 

   (1). 創建Page,SearchInovice包含查詢欄位Region、查詢結果Region、按鈕Region

   (2). 在SearchInvoiceCO.java中添加以下方法processFormRequest
         做用:按下查詢發票Button,觸發AM中的方法
   (3). 在InvoiceAM中添加以下方法
         做用:查詢發票, 觸發VO中的方法
   (3). 在InvocieSummaryVO中添加以下方法
         做用:設定sql的條件及具體語法

 

、解析


當你爲pageLayout區域添加一個query 區域時,OAF框架生成一個oracle.apps.fnd.framework.webui.beans.layout.OAQueryBean對象。

它依賴於它的配置,並經過一個子控件table, advanced table或者HGrid來實現simple search, advanced search和view panel組合,OAF框架自動在合適的區域生成按鈕。

1. 結構

 

2. Query區域的使用限制

LOV Choice組件是不支持的。當使用一個query區域時,你不該該把結果表中的messageLovChoice列標記爲可查詢列(」queryable」)

 

、案例 - SimpleSearchPanel 查詢方式


1. 創建SimpleSearchPannel

    

 

2. 測試SimpleSearchPannel結果

    

、案例 - AdvancedSearchPannel 查詢方式


1. 創建AdvancedSearchPannel

    

 

2. 測試AdvancedSearchPannel結果

    

 

Thanks and Regards

相關文章
相關標籤/搜索