OAF实现下拉菜单联动
当需要输入多个下拉菜单选项时,可能某些下拉菜单是有级联关系的。这时候就需要使用级联的下拉菜单来解决。下面的教程将介绍如何使用ppr制作级联下拉菜单
一、新建AM
在test.oracle.apps.cux上点击右键,选择CreateApplication Module
输入 Package:test.oracle.apps.cux.ppr.server
Name:PPRAM
下一步,直到完成
二、新建VO
在test.oracle.apps.cux.ppr.server点右键,选择Create View Object
输入 Package:test.oracle.apps.cux.ppr.server
Name:SupplierVO
下一步,一直到 Step 5 SQL Statement
在Qurey Statement中输入
SELECTvendor_id,
vendor_name
FROMap_suppliers
在test.oracle.apps.cux.ppr.server点右键,选择Create View Object
输入Package:test.oracle.apps.cux.ppr.server
Name:SupplierSiteVO
下一步,一直到 Step 5 SQL Statement
在Qurey Statement中输入
SELECTvendor_site_id,
vendor_id,
vendor_site_code
FROM ap_supplier_sites_all
三、添加VO到AM中
双击PPRAM,进入AM编辑界面
在Data Model标签页中,将SupplierVO,SupplierSiteVO添加到PPRAM下
确定
四、新建PAGE页
在test.oracle.apps.cux.ppr上点击右键New->Web Tier->OA Components->Page
确定
输入 Name:PprPG
Package:test.oracle.apps.cux.ppr.webui
确定
修改PageLayout属性
ID:PageLayoutRN
AM Definition:test.oracle.apps.cux.ppr.server.PPRAM
Window Title:Tab Page
Title:Tab Page:PPR Test
右键点键pageLayout,创建一个Region,修改属性
ID:PprTestHdr
Text:级联下拉
在Header上新建一个Region,修改属性
ID:MainRN
Region Style:labeledFieldLayout
Width:100%
在MainRN上新建两个ITEM
修改Item1的属性
ID: supplier
Item Style:messageChoice
Disable Server Side Validation :True
Action Type:firePartialAction
Prompt:供应商
Disable Client Side Validation:True
Event:changeList
Picklist View Definition:test.oracle.apps.cux.ppr.server.SupplierVO
PickList View Instance:SupplierVO1
Picklist Display Attribute:VendorName
Picklist Value Attribute:VendorId
修改Item2属性
ID: supplierSite
Item Style:messageChoice
Prompt:供应商地点
Picklist View Definition:test.oracle.apps.cux.ppr.server.SupplierSiteVO
PickList View Instance:SupplierSiteVO1
Picklist Display Attribute:VendorSiteCode
Picklist Value Attribute:VendorSiteId
运行,看一下效果
五、创建CO
在PageLayoutRN上点右键,选择 Set NewController...
Package Name:test.oracle.apps.cux.ppr.webui
Class Name: PprCO
在processRequest中加入如下代码
public void processRequest(OAPageContext pageContext, OAWebBean webBean){
super.processRequest(pageContext, webBean);
OAApplicationModule am = pageContext.getApplicationModule(webBean);
am.invokeMethod("handleListInitEvent", null);
}
在processFormRequest中加入如下代码
public voidprocessFormRequest(OAPageContext pageContext,
OAWebBeanwebBean) {
super.processFormRequest(pageContext,webBean);
OAApplicationModule am =pageContext.getApplicationModule(webBean);
if("changeList".equals(pageContext.getParameter(EVENT_PARAM))) {
Serializable[] parameters =
{ pageContext.getParameter("supplier")};
am.invokeMethod("setCondition", parameters);
}
}
在AM中,新建方法
public void setCondition(String p_vendorId){
SupplierSiteVOImpl site =this.getSupplierSiteVO1();
String whereClause = " vendor_id=" + p_vendorId;
site.setWhereClause(whereClause);
site.executeQuery();
}
public void handleListInitEvent() {
SupplierSiteVOImpl site =this.getSupplierSiteVO1();
String whereClause = " vendor_id=" + "-1";
site.setWhereClause(whereClause);
site.executeQuery();
}
运行,看一下效果
OAF实现下拉菜单联动的更多相关文章
- Jenkins配置下拉菜单联动效果
在使用Jenkins集成时,经常需要配置一些环境信息,由于测试.线上.预发布需要切换环境和域名,需要在Jenkins中配置下拉菜单联动效果. 首先选择参数化构建过程,然后首先配置环境,环境分为:测试环 ...
- jQuery 前端复选框 全选 反选 下拉菜单联动
jQuery 页面中复选框全选.反选.下拉联动(级联) <!DOCTYPE html> <html lang="en"> <head> < ...
- layui select下拉菜单联动
做的比较简单,先从后台直接把第一级菜单输出,然后点击二级菜单的时候再动态展示 <div class="layui-inline"> <label class=&q ...
- OAF_开发系列07_实现OAF下拉菜单的上下联动Poplist Synchor(案例)
20150706 Created By BaoXinjian
- Dwz下拉菜单的二级联动
在DWZ文档中对组合框combox的是这样描述的: 在传统的select 用class 定义:class=”combox”, html 扩展:保留原有属性name, 增加了属性:ref. ref 属 ...
- (实用篇)jQuery+PHP+MySQL实现二级联动下拉菜单
二级联动下拉菜单选择应用在在很多地方,比如说省市下拉联动,商品大小类下拉选择联动.本文将通过实例讲解使用jQuery+PHP+MySQL来实现大小分类二级下拉联动效果. 先看下效果 大类: 前端技术 ...
- jQuery cxSelect 多级联动下拉菜单
随着电商热门,这种多层次的互动更充分地体现在下拉菜单,最明显的是多级联动地址下拉选择,因此,这里是一个简单的分享 jQuery cxSelect 多级联动下拉菜单 cxSelect 它是基于 jQue ...
- JavaScript 多级联动浮动(下拉)菜单 (第二版)
JavaScript 多级联动浮动(下拉)菜单 (第二版) 上一个版本(第一版请看这里)基本实现了多级联动和浮动菜单的功能,但效果不是太好,使用麻烦还有些bug,实用性不高.这次除了修改已发现的问 ...
- php+ajax的三级联动下拉菜单
封装一个三级联动,就可以在任何页面进行引用了 先写个页面引用一下这个js <head> <meta http-equiv="Content-Type" conte ...
随机推荐
- Java异常处理-----自定义异常
自定义异常 问题:现实中会出现新的病,就需要新的描述. 分析: java的面向对象思想将程序中出现的特有问题进行封装. 案例: 定义功能模拟凌波登录.(例如:lb(String ip))需要接收ip地 ...
- android PM2.5监控demo开发
最近看到了这个网站是aqicn.org,是一个监控北京空气状态的网站,截图如下 好了,接下来我们利用这个网站返回的json数据来写一个监控北京空气状况尤其是PM2.5的demo. 1.布局文件如下: ...
- memcached实战系列(四)memcached stats命令 memcached优化
memcached提供一系列的命令进行优化的查看,方便我们调整我们的存储策略,查看我们的使用率,内存的使用率以及浪费情况.常用的命令有stats.stats settings.stats items. ...
- Java在Linux下 不能处理图形的解决办法 Can't connect to X11 window server
java在图形处理时调用了本地的图形处理库.在利用Java作图形处理(比如:图片缩放,图片签名,生成报表)时,如果运行在windows上不会出问题.如果将程序移植到Linux/Unix上的时候有可能出 ...
- Google会思考的深度学习系统
上周五在旧金山举行的机器学习会议上,Google软件工程师Quoc V. Le讲解了Google的"深度学习"系统是如何运作的. "深度学习"需要用到大型计算机 ...
- Android简易实战教程--第一话《最简单的计算器》
转载请注明出处:http://blog.csdn.net/qq_32059827/article/details/51707931 从今天开始,本专栏持续更新Android简易实战类博客文章.和以往专 ...
- Android Service详解
service作为四大组件值得我们的更多的关注 在Android中,Activity主要负责前台页面的展示,Service主要负责需要长期运行的任务.例如,一个从service播放音乐的音乐播放器,应 ...
- Socket接收器——Acceptor
Acceptor是JIoEndpoint的内部类,主要的职责就是监听是否有客户端套接字连接并接收socket,再将socket交由任务执行者(Executor)执行.不断从系统底层读取socket,接 ...
- 套接字输入缓冲装置——InternalInputBuffer
互联网的世界很复杂,信息从一端传向另一端过程也相当复杂,中间可能通过若干个硬件,为了提高发送和接收效率,在发送端及接收端都将引入缓冲区,所以两端的套接字都拥有各自的缓冲区,当然这种缓冲区的引入也带来了 ...
- java 之容器
在Java中,我们想要保存对象可以使用很多种手段.我们之前了解过的数组就是其中之一.但是数组具有固定的尺寸,而通常来说,程序总是在运行时根据条件来创建对象,我们无法预知将要创建对象的个数以及类型,所以 ...