当需要输入多个下拉菜单选项时,可能某些下拉菜单是有级联关系的。这时候就需要使用级联的下拉菜单来解决。下面的教程将介绍如何使用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实现下拉菜单联动的更多相关文章

  1. Jenkins配置下拉菜单联动效果

    在使用Jenkins集成时,经常需要配置一些环境信息,由于测试.线上.预发布需要切换环境和域名,需要在Jenkins中配置下拉菜单联动效果. 首先选择参数化构建过程,然后首先配置环境,环境分为:测试环 ...

  2. jQuery 前端复选框 全选 反选 下拉菜单联动

    jQuery 页面中复选框全选.反选.下拉联动(级联) <!DOCTYPE html> <html lang="en"> <head> < ...

  3. layui select下拉菜单联动

    做的比较简单,先从后台直接把第一级菜单输出,然后点击二级菜单的时候再动态展示 <div class="layui-inline"> <label class=&q ...

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

    20150706 Created By BaoXinjian

  5. Dwz下拉菜单的二级联动

    在DWZ文档中对组合框combox的是这样描述的: 在传统的select 用class 定义:class=”combox”, html 扩展:保留原有属性name,  增加了属性:ref. ref 属 ...

  6. (实用篇)jQuery+PHP+MySQL实现二级联动下拉菜单

    二级联动下拉菜单选择应用在在很多地方,比如说省市下拉联动,商品大小类下拉选择联动.本文将通过实例讲解使用jQuery+PHP+MySQL来实现大小分类二级下拉联动效果. 先看下效果 大类:  前端技术 ...

  7. jQuery cxSelect 多级联动下拉菜单

    随着电商热门,这种多层次的互动更充分地体现在下拉菜单,最明显的是多级联动地址下拉选择,因此,这里是一个简单的分享 jQuery cxSelect 多级联动下拉菜单 cxSelect 它是基于 jQue ...

  8. JavaScript 多级联动浮动(下拉)菜单 (第二版)

    JavaScript 多级联动浮动(下拉)菜单 (第二版)   上一个版本(第一版请看这里)基本实现了多级联动和浮动菜单的功能,但效果不是太好,使用麻烦还有些bug,实用性不高.这次除了修改已发现的问 ...

  9. php+ajax的三级联动下拉菜单

    封装一个三级联动,就可以在任何页面进行引用了 先写个页面引用一下这个js <head> <meta http-equiv="Content-Type" conte ...

随机推荐

  1. Java异常处理-----自定义异常

    自定义异常 问题:现实中会出现新的病,就需要新的描述. 分析: java的面向对象思想将程序中出现的特有问题进行封装. 案例: 定义功能模拟凌波登录.(例如:lb(String ip))需要接收ip地 ...

  2. android PM2.5监控demo开发

    最近看到了这个网站是aqicn.org,是一个监控北京空气状态的网站,截图如下 好了,接下来我们利用这个网站返回的json数据来写一个监控北京空气状况尤其是PM2.5的demo. 1.布局文件如下: ...

  3. memcached实战系列(四)memcached stats命令 memcached优化

    memcached提供一系列的命令进行优化的查看,方便我们调整我们的存储策略,查看我们的使用率,内存的使用率以及浪费情况.常用的命令有stats.stats settings.stats items. ...

  4. Java在Linux下 不能处理图形的解决办法 Can't connect to X11 window server

    java在图形处理时调用了本地的图形处理库.在利用Java作图形处理(比如:图片缩放,图片签名,生成报表)时,如果运行在windows上不会出问题.如果将程序移植到Linux/Unix上的时候有可能出 ...

  5. Google会思考的深度学习系统

    上周五在旧金山举行的机器学习会议上,Google软件工程师Quoc V. Le讲解了Google的"深度学习"系统是如何运作的. "深度学习"需要用到大型计算机 ...

  6. Android简易实战教程--第一话《最简单的计算器》

    转载请注明出处:http://blog.csdn.net/qq_32059827/article/details/51707931 从今天开始,本专栏持续更新Android简易实战类博客文章.和以往专 ...

  7. Android Service详解

    service作为四大组件值得我们的更多的关注 在Android中,Activity主要负责前台页面的展示,Service主要负责需要长期运行的任务.例如,一个从service播放音乐的音乐播放器,应 ...

  8. Socket接收器——Acceptor

    Acceptor是JIoEndpoint的内部类,主要的职责就是监听是否有客户端套接字连接并接收socket,再将socket交由任务执行者(Executor)执行.不断从系统底层读取socket,接 ...

  9. 套接字输入缓冲装置——InternalInputBuffer

    互联网的世界很复杂,信息从一端传向另一端过程也相当复杂,中间可能通过若干个硬件,为了提高发送和接收效率,在发送端及接收端都将引入缓冲区,所以两端的套接字都拥有各自的缓冲区,当然这种缓冲区的引入也带来了 ...

  10. java 之容器

    在Java中,我们想要保存对象可以使用很多种手段.我们之前了解过的数组就是其中之一.但是数组具有固定的尺寸,而通常来说,程序总是在运行时根据条件来创建对象,我们无法预知将要创建对象的个数以及类型,所以 ...