OAF学习笔记-MessageChoice(Poplist)的级联显示

OAF学习笔记-MessageChoice(Poplist)的级联显示

下拉列表的级联显示是非常常用的一种界面显示效果,在FORMS中我常作,作法也很简单,可OAF中显然有点麻烦了…

现假定有张表,里面有两个字段,一个是Province(省),一个是City(市).

  

现需要在页面上放置两个下拉列表字段,一个选择省,一个选择市,当然,选择市的下拉列表值需要根据省的下拉列表的选择进行筛选.

实现思路:

实际上很简单,与FORMS差不多,就是要动态的指定选择市的下拉列表的查询.当选择完省后,立即更新市的查询…

实现步骤如下:

  1. 新建一个Project(方法略):

Name :  OAPoplist

Path:      abeam.oracle.apps.icx.poplist

  1. 新建一个Business Component Package(For AM and VO)

新建BC:

Package Name:   abeam.oracle.apps.icx.poplist.server

新建AM:

AM Name:          PoplistAM

AM Path:            abeam.oracle.apps.icx.poplist.server

新建省的VO(基于SQL):

VO Name:           ProvinceVO

VO Path:             abeam.oracle.apps.icx.poplist.server

SQL:                    select distinct t.province  from test_lovlist t

新建市的VO(基于SQL):

VO Name:           CityVO

VO Path:              abeam.oracle.apps.icx.poplist.server

SQL:                     select  t.city  from test_lovlist t

  1. 关联AM与VO(方法略)
  2. 新建Web Page 及Item

新建Page:

Page Name:   PoplistPG

Page Path:      abeam.oracle.apps.icx.poplist.webui

Root Region:  PageLayoutRN

Root Region Type: pagelayout

AM   Definition:  PoplistAM

新建Item:

Provincelist :

Property

Value

Item style

MessageChoice

Required

Yes(optional)

Add blank value

False

Picklist view Definition

Abeam.oracle.apps.icx.poplist.server.ProvinceVO

Picklist display attribute

Province

Picklist value attribute

Province

   注:  蓝色的设置必须要用完整的VO名称.

Citylist:

Property

Value

Item style

MessageChoice

Required

Yes(optional)

Add blank value

False

Picklist view Definition

Abeam.oracle.apps.icx.poplist.server.CityVO

Picklist view instance

CityVO

Picklist display attribute

City

Picklist value attribute

City

    注: 蓝色的设置是我在经历若干次失败后才发现的….请设置为需要进行筛选的VO的名字,注意,只是名称,不需路径…

  1. 代码
    1. 在AM中新建方法对CITY的VO进行动态查询

      伪码如下:

          public void setCondition (String p_cond)

  {   

    CityVOImpl empvo = this.getCityVO(); //实例化VO

           

    String whereclause = "province = '"+ p_cond +"'"; //组合条件语句

    注: 这里的province 不能写成 t.province,即使你的VO中有t, 我一开始加了这个t,总是报错,后来才发现,如果动态设定这个SQL的话,

    JDEV会把原来的sql做成一个子查询,然后定义一个系统别名,而这个t无法识别.

    empvo.setWhereClause(whereclause); //设置VO的条件

    empvo.executeQuery(); //重新查询

  }

    1. 在 CO中的ProcessFormRequest中调用上述方法

伪码如下:

  import oracle.apps.fnd.framework.OAApplicationModule;

  import java.io.Serializable;

  public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)

  {

    super.processFormRequest(pageContext, webBean); //系统黓认…

    OAApplicationModule am = pageContext.getApplicationModule(webBean);  //实例化AM

    Serializable[] parameters = { pageContext.getParameter("Provincelist")}; //定义传入参数并取得省的值.

    am.invokeMethod("setCondition", parameters); //调用方法,生成市的列表.

 

  }

完了,保存并运行,发现失败了….原因是你选择省后,并不能触发页面的POST动作.也就无法运行ProcessFormRequest方法.因此还需做如下设定,也是找了半天,无意中发现的…

设置省下拉列表ITEM的一个属性:

Property Name:  Action Type

Property Value:  fireAction (点火)

Property Name: Event

Property Value:  RefCity  (用户定义的EVENT 名称)

设完之后,成功运行…

但这有个明显的BUG,即一旦点火,所有ProcessFormRequest中的代码都将执行,这显然是不行的.因此需要先判断是由这个ITEM点的火,用如下语句判断:

if ("RefCity".equals(pageContext.getParameter(EVENT_PARAM)))

总算搞掟了....

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10359218/viewspace-677454/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10359218/viewspace-677454/

NVIDIA B300 vs B200:详细解析与性能对决 详细解析 NVIDIA B300 整机)的性能,并与前代的 B200 进行对比。它不仅在核心计算能力(FP8)上实现了飞跃,更重要的是通过革命性的第二代 Transformer Engine 和第五代 NVLink 技术,彻底重塑了大规模 AI 模型训练和推理的效率与规模上限。其显存容量和带宽的巨大提升也为处理超大型模型和数据提供了坚实基础。与 B200 相比,B300 是一次全面的、代际性的性能跃升,特别适合那些需要处理最前沿、最复杂 AI 和科学计算任务的用户和组织。 阅读详情

相关推荐

SPSS实战:如何用Harman单因素检验搞定共同方法偏差(附完整操作步骤)

本文提供了一份详尽的SPSS实战指南,手把手教你运用Harman单因素检验来诊断共同方法偏差。文章从核心概念讲起,逐步详解数据准备、SPSS操作步骤、结果解读与报告撰写,帮助研究者快速掌握这一关键的数据质量控制方法,确保量化研究结论的可靠性。

weixin_29263201的博客 1704

OAF学习笔记-13- CO ,在页面加载前,给页面Item赋值

页面有些Item 需要动态赋值,(一种在属性设置面板设置动态赋值,另外一种是Java赋值,这里介绍的是java中实现的.属性设置以后OK了就添加) 思路 获取Item 控件 设置(主要是系统函数,由于OAF没有API 文档) MessageChoice 存:   OAMessageChoiceBean groupBean= (OAMessageChoiceBean

John Yan的博客 1926

Edge浏览器IE模式全攻略:从企业应用到老旧网站兼容(含常见问题解答)

本文详细解析了微软Edge浏览器的IE模式,这是解决企业遗留系统与老旧网站兼容性问题的关键技术。文章从核心原理出发,提供了从个人用户临时启用到企业级组策略部署的完整配置指南,并深入探讨了文档模式调优、ActiveX控件处理等高级技巧,最后汇总了常见问题排查与安全实践,帮助用户高效平衡兼容性与现代化浏览体验。

weixin_29227425的博客 609

OAF中实现两个下拉选择框的联动

步骤:1.创建两个VO:ReportTypeVO和ReportVO(ReportVO中的ReportTypeId与ReportTypeVO中的ReportTypeId相关);将两个VO添加到AM中,其Instance Name分...

conggegan2855的博客 238

MATLAB机械臂建模实战:标准D-H法与改进D-H法到底选哪个?(附代码对比)

本文深入解析MATLAB中机械臂建模的标准D-H法与改进D-H法的本质区别,提供详细的代码对比和可视化结果。通过实际案例,帮助读者根据应用场景选择合适方法,并避免常见建模陷阱。特别关注Link函数和SerialLink工具的使用技巧,提升机械臂建模效率。

grape的博客 1121

Qt(C++)使用QChart动态显示3个设备的温度变化曲线

Qt的QChart是一个用于绘制图表和可视化数据的类。提供了一个灵活的、可扩展的、跨平台的图表绘制解决方案,可以用于各种应用程序,如数据分析、科学计算、金融交易等。

1917

OAF实现下拉菜单联动

当需要输入多个下拉菜单选项时,可能某些下拉菜单是有级联关系的。这时候就需要使用级联的下拉菜单来解决。下面的教程将介绍如何使用ppr制作级联下拉菜单 一、新建AM 在test.oracle.apps.cux上点击右键,选择CreateApplication Module 输入 Package:test.oracle.apps.cux.ppr.server Name...

weixin_30446197的博客 206

亿图机床采集数据

这个数控系统的英文名是HUST,在台湾知名度还可以,但大陆这边我做这么多年项目也只接触过屈指可数的几次,可见市场占有率并不大,联网采集不复杂。

若云流风的专栏 2492

OAF_OAF组件系列1 - Item Style汇总(概念)

20150506 Created By BaoXinjian 一、摘要 1. messageStyledText When you want to display only the text and the user should not be able to edit the text then we use the messageStyledText. 2. me...

weixin_34242331的博客 231

SKUA-GOCAD入门教程-第八节 线的创建与编辑7和8

本文介绍了曲线编辑操作的主要功能,包括曲线部分和区域的管理操作。在曲线部分操作方面,详细说明了如何合并、删除、移动和过滤曲线部分,支持精确或带公差的合并方式。在曲线区域操作方面,阐述了保留/删除区域点、移动区域点、保留/删除区域线段等操作。此外还介绍了节点连接功能,包括新增/删除连接、端点连接以及为曲线赋予地质特征的方法。

江洋大葱的博客 390

全覆盖路径规划开源项目Clean-robot-turtlebot3关键函数解析(上)

本系列文章主要介绍全覆盖路径规划开源项目Clean-robot-turtlebot3的相关内容,包含如下四篇文章,分别介绍了开源项目Clean-robot-turtlebot3流程的概括总结、ROS坐标系常用坐标及其变换、Clean-robot-turtlebot3关键函数解析等内容。

慕羽★的博客 2778

OAF学习笔记-3-下拉框级联

思路,类似于两个下拉框,(两个VO 一个VO中的属性作为另一个VO中的条件,选择前一个VO的值,提交后查找第二个VO ) 创建两个VO SOBVO: SOBOUVO: Item修改为MessageChoice 注:Picklist View Instance 与Picklist View Definition 分清楚 ,SOBVO放在Pickl

John Yan的博客 993

22、云数据中心网络(DCN)部署最佳实践

本文详细介绍了云数据中心网络(DCN)部署的最佳实践,涵盖SDN设计、服务网络规划、管理网络规划等方面。通过合理的架构设计、路由规划和组件协同,提升数据中心的自动化水平、可靠性及安全性,以满足不断增长的业务需求。

d6e7f8的博客 187

OAF—MessageChoice(Poplist)的级联显示

下拉列表的级联显示是非常常用的一种界面显示效果,在FORMS中我常作,作法也很简单,可OAF中显然有点麻烦了… 现假定有张表,里面有两个字段,一个是Province(省),一个是City(市).   现需要在页面上放置两个下拉列表字段,一个选择省,一个选择市,当然,选择市的下拉列表值需要根据省的下拉列表的选择进行筛选.   实现思路: 实际上很简单,与FORMS差不多,就是要动态的指定

weigotopro的专栏 1096

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

OpenSSL 3.0迁移实战:提供者机制与废弃API避坑指南

OpenSSL作为广泛使用的加密库,其3.0版本引入了提供者机制和API分层等底层架构变革。提供者机制通过运行时动态加载算法实现,提升了灵活性和可扩展性;高层API基于EVP框架,统一了接口并增强了安全性。这些改进为开发者带来了算法热插拔、硬件加速集成等价值,适用于网关、安全通信等场景。然而,迁移中常遇到废弃API警告、提供者加载失败等问题。本文深入解析OpenSSL 3.0的提供者机制与废弃API迁移,分享实战经验与避坑指南,助力开发者高效完成升级。

weixin_34146805的博客 325

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

oaf中的poplist和lov

1 poplist 创建poplist首先需要创建poplist需要显示内容的AM和VO,然后要用于显示poplist的控件是messageChoice,其中的picklist view definition用于刚才创建的VO进行绑定。picklist display attribute指定vo查询中的那个字段用于poplist显示。 picklist value attribute指定当popl...

weixin_42968500的博客 601

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

OAF Lov级联(转自零雨其蒙的博客)

Lov级联的意思是:当主Lov选定某值后,子Lov将在主Lov设定的范围内进行选择。 基本思路:将主Lov和从Lov用一个中间控件联系在一起,主Lov通过Return Item向这个控件赋值,从Lov通过Criteria从这个控件中取值,并传给LovRN。 实现步骤: 1 Create一主一从两个Lov,如Org和Position(包括VO和Region)。注...

iteye_7874的博客 509

OAF控件及常见问题汇总

/*OAF控件及常见问题使用 OAF 东方瀚海 http://fccjxxw.com/m/b071defc4afe04a1a8ede1b4.html**/ 点击此页面传一个值,并且此值会一直有效做法 参考博客:http://hutianci.iteye.com/blog/1015925 (1)在前台第一次进页面初始化时存值获取[在控件formValue存执]*/ OAFormV

ForeverDWYW的博客 6111

EBS OAF 开发中的OAMessageRadioGroup控件

EBS OAF 开发中的OAMessageRadioGroup控件(版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处;否则请与本人联系,违者必究)简介RadioGroup控件在OAF12.2.4及之前的开发文档中没有想关介绍,也没有任何示例程序中有相关应用。在网上有介绍说,它是和radiobutton一块使用,其ID作为RadioButton的group name使用,并且

tavor的专栏 3316

OAF 系列教程 三 查询(上)

1.       文档概述 本节教程将会进入OAF查询功能(上)的开发,通过一个简单的查询页面及查询功能的开发,简单的介绍下OAF的功能模块常用的一些程序对象及一般的开发步骤,为后续的教程打基础,便于后期的实践操作和理解。  2.       OAF开发 常用程序对象 OAF开发中常用的数据对象有AM、EO、VO、LOV、PAGE、CO、RN等等,这些对象的用于如下表所示:

lucky4016博客 2811

OAF学习笔记-6-选择时间的控件

思路 :和普通输入框一样 只要修改Tip Type 就行了 将Tip Type 修改成dateFormat 将时间设置为当前时间 并不允许将时间设置为过去时间(在EO 设置时间中键入验证方法)

John Yan的博客 811

OAF中LOV的重置

在OAF中,如果使用标准的resetButton去重置组件,对于LOV组件不起作用,所以一般情况下需要手动重置组件,下面是一个重置组件的方法代码 public static void resetWebBean(OAPageContext pageContext, OAWebBean webBean, ...

xidajiancun 190

OAF 开发TAB页

TAB页 2013年1月17日 21:31 当查询结果列数比较多的时候,往往一页显示不下,在FORM的情况下,我们往往会用Tab页的方法解决。那么在OAF如何制作TAB页呢?下面的教程将介绍如何制作一个简单的TAB页 一、新建AM 在test.oracle.apps.cux上点击右键,选择CreateApplication Module 输入 Packa...

weixin_30619101的博客 138

Oracle OAF 学习小结(3)- 字段控制 的完整案例开发

需求概述: 要点1:页面初始化的时候,获取当前用户,并显示在界面。 要点2:勾上复选框显示详细信息,勾掉隐藏详细信息(选做)

Jane Chiu 1067

MessageFormat和ChoiceFormat的使用方法

1、引入Demo package jdk.text; import java.text.*; import java.util.Date; /** * Created by yesh on 2015/4/1. */ public class TestMessageFormat { public static void main(String[] args) {

xiaoyezi1001的专栏 1006

OAF Lov基本知识

JavaDoc getLovCriteriaItems public Dictionary getLovCriteriaItems() Used from an LOV region's controller to find out all the values of the passive criteria mappings for that LOV. The returned dic...

零雨其蒙 325
上一篇: OAF学习笔记-Project的目录结构
下一篇: OAF学习笔记-开发环境配置
ctrms66804
博客等级 码龄12年 4粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值