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 ...
随机推荐
- App安全(一) Android防止升级过程被劫持和换包
文/ Tamic 地址/ http://blog.csdn.net/sk719887916/article/details/52233112 前言 APP 安全一直是开发者头痛的事情,越来越多的安全漏 ...
- 【伯乐在线】FACEBOOK产品设计总监:设计APP时的14个必考题
最近看到Facebook产品设计总监Julie Zhuo拷问产品的14个问题,非常靠谱.其中有3个问题堪称致命拷问: 1.使用前:这款产品是如何吸引到你的注意力的?2.开始使用:使用这款产品是轻松愉悦 ...
- 使用Android Studio向GitHub提交代码
使用Android Studio向GitHub提交代码 在GitHub上创建一个仓库 填写仓库名称.描述.类型(公有.私有)等信息,点击创建 到此,成功创建了我们的仓库,并且初始化创建了README. ...
- 供应商导入的API补充(详解EBS接口开发之供应商导入)
--供应商 --创建 AP_VENDOR_PUB_PKG.Create_Vendor ( p_api_version IN NUMBER, p_init_msg_list IN VARCHAR2 := ...
- Android系统开机启动流程及init进程浅析
Android系统启动概述 Android系统开机流程基于Linux系统,总体可分为三个阶段: Boot Loader引导程序启动Linux内核启动Android系统启动,Launcher/app启动 ...
- ROS(indigo)MoveIt!控制ABB RobotStudio 5.6x 6.0x中机器人运动
Gazebo以及相关参考文献,参考: ROS(indigo)ABB机器人MoveIt例子 这里需要配置RobotStudio,请参考ROS官网教程.下面列出要点: window端配置结束后,在Ub ...
- Android中Socket通信之TCP与UDP传输原理
一.Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是"请求-响应方式",即在请求时 ...
- linux ubuntu系统下MySQL的安装及设置
debian下安装MySQL:1.构建源或使用光盘镜像,当然你插入光盘也没问题2.有源时本地文件的源配置:修改/etc/apt/sources.list文件, 示例:deb http://192.16 ...
- 1gitolite构建git服务器
软件环境:在有网络条件下(主要是为了安装软件),UbuntuKylin 14.04 1 安装openssh-serveropenssh-client,如果用的是VPS之类的一般都默认安装好了,不 ...
- 后端分布式系列:分布式存储-HDFS DataNode 设计实现解析
前文分析了 NameNode,本文进一步解析 DataNode 的设计和实现要点. 文件存储 DataNode 正如其名是负责存储文件数据的节点.HDFS 中文件的存储方式是将文件按块(block)切 ...