OAF_开发系列04_实现OAF查询4种不同的实现方式的比较和实现(案例)

简介: 2014-06-02 Created By BaoXinjian 一、摘要 OAF实现查询功能或需求,一般都会采用以下四种方式 (1). ResultBasedSearch 最简单的实现方式,将结果中某些栏位需要查询的栏位的属性search设定为true即可 (2).

2014-06-02 Created By BaoXinjian

一、摘要


OAF实现查询功能或需求,一般都会采用以下四种方式

(1). ResultBasedSearch

最简单的实现方式,将结果中某些栏位需要查询的栏位的属性search设定为true即可

(2). AutoCustomizationCriteria:SimpleSearchPanel & AdvancedSearchPannel

使用最多的查询方式,存在两种方式simple & advanced pannel

(3). 完全客制化Search:查询栏位Region - 按钮Regoin - 结果Region

如果遇到非常复杂,查询条件需要通过逻辑进行组合,就可以采用这种方式,完全客制化查询

 

1. ResultBasedSearch

(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

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关文章
fastadmin框架select下拉框该怎么写(接口数据)
fastadmin框架select下拉框该怎么写(接口数据)
574 0
|
Oracle 关系型数据库
OAF_开发系列20_实现OAF打印功能
ddddd   添加一个页面级的button区域:pagebuttonBar,在之下添加button item ,这里主要设置的参数有:采用默认的oaf的打印按钮的id名称: IcxPrintablePageButton,设置属性集为:/oracle/apps/fnd/attributesets...
1183 0
OAF_开发系列21_实现OAF事物控制TransactionUnitHelper(案例)
20150716 Created By BaoXinjian 一、摘要 TransactionUnitHelper用以创建一个被标记的Transaction,个人感觉类似PLSQL SavePoint用以Commit和Rollback特定交易的作用 主要用法 1.
1116 0
|
Oracle 关系型数据库
OAF_开发系列18_实现OAF页面跳转setForwardURL / forwardImmediately(案例)
20150716 Created By BaoXinjian 一、摘要 setForwardURL()与forwardImmediately() 1. forwardImmediately会停止当前页面的请求,直接跳转到新的页面; 2.
1559 0
|
关系型数据库 Oracle
OAF_开发系列14_实现OAF代码动态新增控件
dERP技术讨论群: 288307890 技术交流,技术讨论,欢迎加入 Technology Blog Created By Oracle ERP - 鲍新建
1094 0
|
关系型数据库 测试技术
OAF_开发系列13_实现OAF通过Vector动态查询设置(案例)
20150715 Created By BaoXinjian 一、摘要 Oracle OAF Guide上介绍的标准客制化查询的方式,在多条件下进行查询 具体实现步骤如下 Step1.在controler中的processRequest 的方法中调用 (1).
1634 0
|
SQL Oracle 关系型数据库
OAF_开发系列10_实现OAF动态LOV设定
20150712 Created By BaoXinjian 一、摘要 要在OAF中动态创建LOV的功能是很复杂的一件事,本文所讲述的动态LOV创建场合用于事先不能知道页面上会有多少个LOV,而且LOV所使用的SQL查询,也是由用户交互而获得的。
922 0
|
Web App开发
OAF_开发系列09_实现OAF预提取LOV设定(案例)
20150712 Created By BaoXinjian 一、摘要 1. 预取LOV(Look Ahead LOV) (1). 预取LOV最大的特点就是再也不需要每次都要烦人的弹出一个窗口让人选择了。
1156 0
|
SQL 数据库
OAF_开发系列03_实现OAF如何在保存前判断数据是否存在变更(案例)
2014-06-26 Created By BaoXinjian 一、摘要 在OAF的开发中,可能有这样的需求,在选择保存按钮时,如果存在改动的数据,则提交事务,保存到数据库中; 如果不存在改动的数据,就提示用户当前没有数据可更改; 解决时需要判断页面中所使用的视图对象是否发生过改动,存在多种方法   1. 调用OADBTransaction.isDirty()方法 此方法用于判断当前事务中,视图对象是否发生过变更。
1195 0
|
Oracle 关系型数据库 数据库
OAF_文件系列3_实现OAF多行表中附件功能AttachmentImage(案例)
20150727 Created By BaoXinjian 一、摘要 EBS OAF中如何在多行表中实现附件功能 在OAF中使用附件功能之前,要先明白Entity(实体)的概念。 一个Entity是Oracle E-BussinessSuite的一个数据对象,比如一个物料,一个订单或者一个订单行。
1757 0