EBS OAF开发中实现參数式弹出窗体

时间:2023-09-27 13:21:20

EBS OAF开发中实现參数式弹出窗体

(版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处;否则请与本人联系,违者必究)

概览

參数式弹出窗体和嵌入式弹出窗体不一样,它拥有独立的区域,并不嵌入到使用页面中,它里面的内容依据须要来获取和生成,它拥有自己的AM和页面状态,对popup页面事件的处理也不一样。两种弹出式窗体都仅仅在以下四种组件所支持,既不能改变大小也不可移动。

1.        Text(messageStyledText)

2.        Image

3.        Link

4.        Button

实现參数式弹出窗体的步骤

1.      创建一个独立的RN其会做为參数式弹出窗体,里面放置你须要的控件.

2.      在Jdev结构面板上,在要显示參数式弹出窗体的页面上,选择包括要展示弹出式窗体的控件的区域。

3.      创建一个新的区域,并设置它的类型为popUp.

4.      为上面的popUp区域,设置合理的属性值,比方,ID,Title,Region(第一步中的RN),Type(嵌入式还是參数式),Width, Height, Parameters, Modal Enabled(是不是模态窗体,是的话,用户不能和基础页面打交道)。

5.      在Jdev的结构面板中,选择要弹出窗体的控件(仅仅能为messageStyledText, image, link, 或者 button)并设置以下属性PopupId(Popup控件的ID),PopupRenderEvent(什么事件弹出窗体,比方onClick或者onHover,默认值是onClick),PopupEnabled(是否启用popup,默认值是false),ReadOnly(弹出式窗体是不是仅仅读,假设是的话,但鼠标不在弹出窗体时,弹出窗体会关闭,默认值是false).

实现演示样例

1.      建立參数式弹出式窗体的RN,例如以下,指明AM,及各个控件绑定的VO属性,对应的AM,VO及CO的建立过程和普通一样,略过不提。

EBS OAF开发中实现參数式弹出窗体

2.      建立要使用的页面的PG,AM,VO,CO等等,这里略过不提。

3.          在基础页面上表中加入一个flowLayout或者其它的都能够,用于作为popup控件的容器,由于popup不能直接放到表里面,然后为其加入popup控件,并设置其属性例如以下,这里要注意的是Parameters属性,由于參数式弹出窗体有自己的AM,这是和基础页面交互的主要方式,且其不能够使用EL(Expression Language,12.2之前叫做SPEL(SimplestPossible Expression Language),能够參考文章<<EBS OAF 12.2开发中对EL(ExpressionLanguage)的支持>>,http://blog.csdn.net/tavor/article/details/19645421),而是要使用我在<<EBS OAF 开发中 URL中的标记、加密和编码>>介绍的标记(TOKEN), http://blog.csdn.net/tavor/article/details/23971889

EBS OAF开发中实现參数式弹出窗体

4.      加入一个链接控件在table以下,它的属性设置例如以下,里面指定的Popup Id为上面第三步中的Popup的ID。

EBS OAF开发中实现參数式弹出窗体

5.      在popup的AM中加入以下的方法,用于依据ID初始化,这里写了最简单的逻辑

EBS OAF开发中实现參数式弹出窗体

6.      在Popup 的CO加入以下的来依据基础页面传入的參数来调用AM的方法以便初始化VO。

EBS OAF开发中实现參数式弹出窗体

7.      执行的效果例如以下,点击链接之后将显示对应manager的信息。

EBS OAF开发中实现參数式弹出窗体