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
随机推荐
- PHP 监控服务器动态
预期准备 一个139邮箱,收到邮件后,可以免费给你短信提醒.如果你不需要短信提醒功能,用什么邮箱都可以 另外一个可以运行PHP文件的Web服务器(相当于监控服务器),现在免费的PHP网站空间很多,上网 ...
- C#字符串截取
.取前i个字符 ,i); string str1=str.Remove(i,str.Length-i); .去掉前i个字符 ,i); string str1=str.SubString(i); .从右 ...
- php组合
为了提高代码的复用性,降低代码的耦合(组合实现的两种方式) 模式一: <?php //组合模式一 class Person{ public function eat(){ echo " ...
- js中的事件部分总结
一.HTML事件 HTML事件处理就是直接在HTML标签上添加事件,举例 <p class="" onclick=function(){alert(HTML事件)}>& ...
- 学习maple
定义函数:$f:=(x,y) \rightarrow x^2+y^2$ 类似mathematica的manipulate功能:plots[animate](plot,[f(x,y),x=0..1],y ...
- centos 安装beanstalkd
You need to have the EPEL repo (http://www.servermom.org/2-cents-tip-how-to-enable-epel-repo-on-cent ...
- python 使用virtualenvrapper虚拟环境管理工具
centos 默认安装的python是2.6版本的 使用virtualenv 环境管理工具建立python虚拟环境的时候会遇到一些错误,DEPRECATION: Python 2.6 is no lo ...
- WINDOW.PARENT.CKEDITOR.TOOLS.CALLFUNCTION 图片上传
CKEDITOR 编辑器 图片上传 WINDOW.PARENT.CKEDITOR.TOOLS.CALLFUNCTION (CKEditorFuncNum,图片路径,返回信息); CKEditor ...
- 关于Java中的基本数据类型转换
Java中的基本类型有四种,其中整型分为byte.short.int.long,浮点型分为float.double,字符型char,布尔型boolean.8种类型的级别由低到高byte->sho ...
- 用JS实现的类似QQ密码的输入特效
<input ID="_PSD"></input> <script> function passwordText(ID,pd,mark){ ma ...