选择头信息,动态刷新行信息。本文将详细介绍该种需求的做法。

本例沿用《OAF-头行结构》的am与vo,所以在进行本例之前,请先完成《OAF-头行结构》

一、创建页面

在test.oracle.apps.cux.detail下,点右键 New->Web Tier->OA Components->Page

确定

输入 Name:PPRDetailPG

Package:test.oracle.apps.cux.detail.webui

确定,生成页面

更改region1属性

ID:PageLayoutRN

AM Definition:test.oracle.apps.cux.ppr.server.DetailAM

Window Title:级联明细

Title: 级联明细

新建一个RN:QueryRN

选择PageLayoutRN,点右键,New->Region

更改以下信息

ID:QueryRN

Region Style:query

ConstructionMode:autoCustomizationCriteria

IncludeAdvanced Panel:True

 

用向导新建一个表格

右键点击QueryRN,New->RegionUsing Wizard...

ApplicationModule:test.oracle.apps.cux.details.server.DetailAM

AvailableView Usage:PoHeaderVO1

下一步

Region ID:PoHeaderTb

Region Style:table

下一步

选中PoheaderId,PoNumber,VendorName,VendorSiteCode,Viewline到右边

下一步,修改表格信息

完成

可以看到,结构图如下

修改ITEM的SearchAllowed全部为True

更改PoHeaderTb属性

Width:100%

添加查询条件

选择QueryRN,右键选New->simpleSearchPanel

系统会自动创建一个Header和一个Region

修改Header属性

ID:SimpleSearchHdr

TEXT:订单查询

修改Region属性

ID:SearchComponentLayout

然后在Region下面新建一个messageTextInput

修改ITEM的属性

ID:PoHeaderID

SearchAllowed:True

MaximumLength:40

Prompt:订单ID

Length:20

添加查询的对应关系

选择QueryRN,右键New->simpleSearchMappings

更改属性

ID:PoHeaderMap

Search Item:PoHeaderId

Results Item:PoHeaderId

添加查询的对应关系

选择QueryRN,右键New->simpleSearchMappings

更改属性

ID:PoHeaderMap

Search Item:PoHeaderId

Results Item:PoHeaderId

创建detail域

选择PageLayoutRN,点右键,New->Region,更改设置

Id:DetailRN

Region Style:header

Text: 行明细

选中DetailRN,点右键,New->RegionUsing Wizard...

ApplicationModule:test.oracle.apps.cux.details.server.DetailAM

AvailableView Usage:PolineVO1

下一步:Region Properties

Region ID:PoLineTb

Region Style:table

选中LineNum,ItemCode,ItemDescription到右边

下一步,修改表格属性

完成

更改表格属性,修改search_allowed全部为True

更改PoLineTb

Width:100%

选择PoHeaderTb,右键New->SingleSelection

修改multipleSelection1的属

ID:singleSelection

View Instance:PoHeaderVO1

ViewAttribute:Selectflag、

Action Type:firePartialAction

Event:cascadeDetail

运行看一下结果

二、创建CO

在PageLayoutRN上右击SetNew Controller

Package Name:test.oracle.apps.cux.detail.webui

Class Name: PPRDetailCO

确定,完成

在processFormRequest中加入如下代码

public voidprocessFormRequest(OAPageContext pageContext,

OAWebBeanwebBean) {

super.processFormRequest(pageContext,webBean);

OAApplicationModule am =

(OAApplicationModule)pageContext.getApplicationModule(webBean);

String event = pageContext.getParameter("event");

if(event.equals("cascadeDetail")) {

OAViewObject vo =(OAViewObject)am.findViewObject("PoHeaderVO1");

Row masterRow =vo.getFirstFilteredRow("Selectflag", "Y");

if (masterRow != null) {

vo.setCurrentRow(masterRow);

}

}

}

运行看一下结果

选中头时,会自动刷新行信息。

OAF更改动态头行的更多相关文章

  1. 动态PIVOT行转列

    id name subject score remark1 l math 86 2 l eng 68 3 l phy 88 4 z chn 99 5 z math 92 6 z com 98 7 z ...

  2. Form 头行附件查询

    查询Form的头行附件: SELECT  st.short_text order_short_text, description order_attach_desc, pk1_value order_ ...

  3. webapi net 直接更改协议头

    1.直接更改协议头 [HttpGet] public HttpResponseMessage Users() { var sites = new object(); string str = tool ...

  4. Excel动态合并行、合并列

    背景: 在北京工作的时候,又一次同事问了我这样一个问题,说我要把从数据库获取到的数据直接通过NPOI进行导出,但是我对导出的格式要特殊的要求,如图: 冥思苦想,最终顺利帮同事解决问题,虽然有点瑕疵,但 ...

  5. jquery动态插入行,不用拼写html,简洁版

    这个一个利用jquery实现动态插入输入行效果小功能,不用在javascript里拼写html字符串,更简洁.高效. html代码: <div class="fitem"&g ...

  6. Telerik RadGridView动态增删行及行列操作

    最近使用一直使用第三方控件Telerik,版本 2011 Q1,一直使用显示控件RadGridView,使用起来比DataGird好使, 也发现有控件问题. 1.增行 RadGridView中使用Be ...

  7. 更改HTTP头信息

    http信息分三部分 1.请求行 GET  lizi.php  HTTP/1.1 2.HTTP头信 Host: localhost Connection: keep-alive Cache-Contr ...

  8. easyui datagrid动态设置行、列、单元格不允许编辑

    Easyui datagrid 行编辑.列编辑.单元格编辑设置 功能: 动态对datagrid 进行行.列.单元格编辑进行设置不允许编辑. 禁用行编辑: 在编辑方法调用前,对选择的行进行判断,如果不允 ...

  9. java使用poi操作word, 支持动态的行(一个占位符插入多条)和表格中动态行, 支持图片

    依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifa ...

随机推荐

  1. Android TV开发总结(五)TV上屏幕适配总结

    前言:前面几篇总结一些TV上的小Sample,开源到GitHub:https://github.com/hejunlin2013/TVSample, 点击链接,可以持续关注.今天总结下TV上屏幕适配. ...

  2. Android自动打包工具aapt详解

    概念 在Android.mk中有LOCAL_AAPT_FLAGS配置项,在gradle中也有aaptOptions,那么aapt到底是干什么的呢? aapt即Android Asset Packagi ...

  3. Python实现数据库一键导出为Excel表格

    依赖 Python2711 xlwt MySQLdb 数据库相关 连接 获取字段信息 获取数据 Excel基础 workbook sheet 案例 封装 封装之后 测试结果 总结 数据库数据导出为ex ...

  4. N个整数(数的大小为0-255)的序列,把它们加密为K个整数(数的大小为0-255).再将K个整数顺序随机打乱,使得可以从这乱序的K个整数中解码出原序列。设计加密解密算法,且要求K<=15*N.

    N个整数(数的大小为0-255)的序列,把它们加密为K个整数(数的大小为0-255).再将K个整数顺序随机打乱,使得可以从这乱序的K个整数中解码出原序列.设计加密解密算法,且要求K<=15*N. ...

  5. Struts 1 之<html>标签库

    <html:html>标签 <html:html>标签用于在网页开头生成HTML的<html>元素,它只有一个用于显示用户语言的lang属性: <html:h ...

  6. Spark技术内幕之任务调度:从SparkContext开始

    SparkContext是开发Spark应用的入口,它负责和整个集群的交互,包括创建RDD,accumulators and broadcast variables.理解Spark的架构,需要从这个入 ...

  7. eclipse无法连接genymotion+Unable to start the Genymotion virtual device

    八月的开头,带着希望和期待,小编继续着实习之路,闭眼呼吸,阳光勾勒微笑,做Android项目,真心想吐槽一下eclipse中的虚拟机,那速度真叫一个慢啊,她肯定是属乌龟的,要不就是蜗牛,这个让小编很是 ...

  8. UNIX网络编程——客户/服务器程序设计示范(七)

        TCP预先创建线程服务器程序,每个线程各自accept 前面讨论过预先派生一个子进程池快于为每个客户线程派生一个子进程.在支持线程的系统上,我们有理由预期在服务器启动阶段预先创建一个线程池以取 ...

  9. Troubleshooting Autoinvoice Import

    metalink :1089172.1 In this Document   Purpose   Troubleshooting Steps   AutoInvoice Execution Repor ...

  10. SVM及其c++代码运用实例

    最近做个小东西,要用到SVM,搜索网上,发现大伙都是各种介绍理论,让我等小码农晕头转向,是故自己学习总结一下,并将代码实例展示出来,方便大家共同探讨,该代码是用opencv编写的,很容易学习滴. 1. ...