在OAF中,存在標準的查詢面板,但是標準的查詢只能實現基礎、簡單的查詢,所以在真正的項目當中,一般情況下都是使用自己開發的客戶化查詢,開發客戶化查詢的一般步驟如下:
1. 建立頁面PG,修改Region
ID |
PageLayoutRN |
Region Style |
PageLayout |
AM Definition |
RootAM |
Window Title |
xxx |
Title |
xxx |
2. 在PageLayoutRN下建立Region,屬性如下:
ID |
MessageComponentLayoutRN |
Region Style |
MessageComponentLayout |
Width |
100% |
Rows |
2 |
Columns |
6 |
3. 在MessageComponentLayoutRN下新建搜索項(lov形式)
ID |
SearchProject |
Item Style |
MessageLovInput |
External LOV |
XXX |
Prompt |
XXX |
這裏的External LOV是來源於lov的region。
4.建立LOV的頁面,建立一個listOfValues的region
Region Style |
ListOfValues |
Scope |
Public |
AM Definition |
LovAM |
5. 基於vo,建立resultTable,ProjectId項的屬性
ID |
ProjectId |
Item Style |
Formvalue |
6. 在建立的lov組件下建立map映射
ID |
ProjectNameMap |
LOV Region Item |
ProjectName |
Return Item |
SearchProject |
Criteria Item |
SerachProject |
7.下拉框形式組件
ID |
SearchProjectPhase |
Item Style |
MessageChoice |
Picklist View Definition |
cux.oracle.apps.pa.lov.server.ProjectPhaseVO |
Picklist Display Attribute |
ProjectStatusName |
Picklist Value Attribute |
ProjectStatusName |
Prmpt |
|
8. 建立ResultTable
Width |
100% |
9. 在messageComponentLayout Components下添加footer,在region下添加query按鈕
ID |
Query |
Item Style |
SubmitButton |
Prompt |
搜索(&S) |
10.繼續添加SpaceBean
ID |
SpacerBean |
Item Style |
Spacer |
Width |
5 |
11. 繼續添加cancel按鈕
ID |
Cancel |
Item Style |
SubmitButton |
Disable Client Side Validation |
True |
Prompt |
清除(&C) |
上面的步驟是建立好一個搜索面板,下面編寫搜索邏輯代碼。
首先在co中捕捉點擊搜索按鈕的事件:
搜索邏輯代碼:
結果如下