当需要输入多个下拉菜单选项时,可能某些下拉菜单是有级联关系的。这时候就需要使用级联的下拉菜单来解决。下面的教程将介绍如何使用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. Linux下文件和文件夹操作命令详解

    花了两个小时的时间,把文件和文件夹相关的常用命令:创建.删除.移动.复制.查找.重命名在linux上测试了一把,总结下来.文件夹的这些基本操作是要多注意的,一不小心就达不到你想要的效果. 文件夹操作: ...

  2. SpriteKit关于SKScene中的渲染Loop

    在本节中,我将来说明一下SKScene在SKView显示之后发生了神马. 在更传统的iOS app中,你可能只会渲染view的内容仅仅一次,然后它将保持静态直到view的模式发生了显示的改变,这对于商 ...

  3. Android源码浅析(四)——我在Android开发中常用到的adb命令,Linux命令,源码编译命令

    Android源码浅析(四)--我在Android开发中常用到的adb命令,Linux命令,源码编译命令 我自己平时开发的时候积累的一些命令,希望对你有所帮助 adb是什么?: adb的全称为Andr ...

  4. Intellij IDEA 插件开发之自建插件仓库

    Intellij IDEA 有一个自己的官方的插件仓库,但是当我们的开发的 Intellij IDEA 的插件不能够对外公开时,我们就需要搭建自己的 Intellij IDEA 的插件仓库.前不久我们 ...

  5. Hibernate之配置文件

    可持久化对象有以下三种状态: 临时状态(Transient):对象在保存进数据库之前为临时状态,这时数据库中没有该对象的信息,如果没有持久化,程序退出后临时状态的对象信息将会丢失.随时可能被垃圾回收器 ...

  6. Linux文件上传工具下载工具及详细使用说明

    对于经常使用Linux系统的人员来说,少不了将本地的文件上传到服务器或者从服务器上下载文件到本地,rz / sz命令很方便的帮我们实现了这个功能,但是很多Linux系统初始并没有这两个命令.今天,我们 ...

  7. C库源码中的移位函数

    #include <stdio.h> /* _lrotr()将一个无符号长整形数左循环移位的函数 原形:unsigned long _lrotr(unsigned long value,i ...

  8. Android应用打破65K方法数限制

    近日,Android Developers在Google+上宣布了新的Multidex支持库,为方法总数超过65K的Android应用提供了官方支持.如果你是一名幸运的Android应用开发者,正在开 ...

  9. [ExtJS5学习笔记]第二十三节 Extjs5中表格gridpanel的列格式设置

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/39665979 官方文档:http://docs.sencha.com/extjs/5. ...

  10. RecyclerView下拉刷新上拉加载(二)

    listview下拉刷新上拉加载扩展(一) http://blog.csdn.net/baiyuliang2013/article/details/50252561 listview下拉刷新上拉加载扩 ...