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种不同的实现方式的比较和实现(案例)的更多相关文章

  1. OAF_开发系列26_实现OAF中Java类型并发程式开发oracle.apps.fnd.cp.request(案例)

    20150730 Created By BaoXinjian

  2. OAF_开发系列13_实现OAF通过Vector动态查询设置(案例)

    20150715 Created By BaoXinjian

  3. OAF_开发系列03_实现OAF如何在保存前判断数据是否存在变更(案例)

    2014-06-26 Created By BaoXinjian

  4. OAF_开发系列02_实现OAF页面的通过个性化多语言开发国际化(案例)

    2014-06-10 Created By BaoXinjian

  5. OAF_开发系列28_实现OAF中反编译获取class包代码JD Compiler(案例)

    20150730 Created By BaoXinjian

  6. OAF_开发系列24_实现OAF更新记录显示Record History(案例)

    20150716 Created By BaoXinjian

  7. OAF_开发系列12_实现OAF开发中URL中的标记和加密参数传递(案例)

    20150712 Created By BaoXinjian

  8. OAF_开发系列10_实现OAF动态LOV设定

    20150712 Created By BaoXinjian

  9. OAF_开发系列07_实现OAF下拉菜单的上下联动Poplist Synchor(案例)

    20150706 Created By BaoXinjian

随机推荐

  1. Python常用函数、方法、模块记录

    常用函数: 1.pow():乘方 2.abs():绝对值 3.round():四舍五入 4.int():转换为整数 5.input():键盘输入(会根据用户的输入来做类型的转换) raw_input( ...

  2. 回文数组(Rotate Array (JS))

    旋转一个数组. function rotate(array,n){ var l =array.length,a=array.map(function(x){return x}),arr=[]; n=n ...

  3. 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 ...

  4. Apache commons-client authentication(授权)

    import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.UsernamePasswo ...

  5. iredmail安装脚本分析(三)---conf/global DISTRO值的来源及操作系统的判断

    作者在引入conf/global 文件时,就已经对操作系统的类型进行判断,同时也对DISTRO进行了赋值. 部分代码,如图: 显然文件里的KERNEL_NAME的值就是判断完成的操作系统,具体分析该值 ...

  6. LESS用法·

    CSS 彻底改变了 Web 页面的设计,但 CSS 仍然是静态的,而且在其句法发展方面受到限制.这些限制是有目的且合乎情理的,鼓励广泛加以实现.但开发人员和设计人员常常发现 CSS 使用起来很单调乏味 ...

  7. 【JS】IE兼容placeholder

    直接上代码: $(document).ready(function () { var doc = document, textareas = doc.getElementsByTagName('tex ...

  8. ie6对hover兼容性问题的解决:

    ie6对hover兼容性问题的解决: 1,在body里添加以下样式: behavior:url(../scripts/csshover.htc); csshover.htc可直接在网上下载 2,js解 ...

  9. Kali Linux additional tools setup

    The steps are pretty straight forward. The only tool that might cause some confusion is SMBexec. Thi ...

  10. LEETCODE —— Sudoku Solver

    Write a program to solve a Sudoku puzzle by filling the empty cells. Empty cells are indicated by th ...