OAF_开发系列04_实现OAF查询4种不同的实现方式的比较和实现(案例)
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
OAF_开发系列04_实现OAF查询4种不同的实现方式的比较和实现(案例)的更多相关文章
- OAF_开发系列26_实现OAF中Java类型并发程式开发oracle.apps.fnd.cp.request(案例)
20150730 Created By BaoXinjian
- OAF_开发系列13_实现OAF通过Vector动态查询设置(案例)
20150715 Created By BaoXinjian
- OAF_开发系列03_实现OAF如何在保存前判断数据是否存在变更(案例)
2014-06-26 Created By BaoXinjian
- OAF_开发系列02_实现OAF页面的通过个性化多语言开发国际化(案例)
2014-06-10 Created By BaoXinjian
- OAF_开发系列28_实现OAF中反编译获取class包代码JD Compiler(案例)
20150730 Created By BaoXinjian
- OAF_开发系列24_实现OAF更新记录显示Record History(案例)
20150716 Created By BaoXinjian
- OAF_开发系列12_实现OAF开发中URL中的标记和加密参数传递(案例)
20150712 Created By BaoXinjian
- OAF_开发系列10_实现OAF动态LOV设定
20150712 Created By BaoXinjian
- OAF_开发系列07_实现OAF下拉菜单的上下联动Poplist Synchor(案例)
20150706 Created By BaoXinjian
随机推荐
- Python常用函数、方法、模块记录
常用函数: 1.pow():乘方 2.abs():绝对值 3.round():四舍五入 4.int():转换为整数 5.input():键盘输入(会根据用户的输入来做类型的转换) raw_input( ...
- 回文数组(Rotate Array (JS))
旋转一个数组. function rotate(array,n){ var l =array.length,a=array.map(function(x){return x}),arr=[]; n=n ...
- iOS: How To Make AutoLayout Work On A ScrollView
iOS: How To Make AutoLayout Work On A ScrollView Posted on June 11th, 2014 Ok, I’ll admit. I’ve been ...
- Apache commons-client authentication(授权)
import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.UsernamePasswo ...
- iredmail安装脚本分析(三)---conf/global DISTRO值的来源及操作系统的判断
作者在引入conf/global 文件时,就已经对操作系统的类型进行判断,同时也对DISTRO进行了赋值. 部分代码,如图: 显然文件里的KERNEL_NAME的值就是判断完成的操作系统,具体分析该值 ...
- LESS用法·
CSS 彻底改变了 Web 页面的设计,但 CSS 仍然是静态的,而且在其句法发展方面受到限制.这些限制是有目的且合乎情理的,鼓励广泛加以实现.但开发人员和设计人员常常发现 CSS 使用起来很单调乏味 ...
- 【JS】IE兼容placeholder
直接上代码: $(document).ready(function () { var doc = document, textareas = doc.getElementsByTagName('tex ...
- ie6对hover兼容性问题的解决:
ie6对hover兼容性问题的解决: 1,在body里添加以下样式: behavior:url(../scripts/csshover.htc); csshover.htc可直接在网上下载 2,js解 ...
- Kali Linux additional tools setup
The steps are pretty straight forward. The only tool that might cause some confusion is SMBexec. Thi ...
- LEETCODE —— Sudoku Solver
Write a program to solve a Sudoku puzzle by filling the empty cells. Empty cells are indicated by th ...