EBS form 之间跳转实现(form 关闭)

实现 form CUXOMWB 使用 app_navigate.execute 打开 form CUXOEXPRAVA ;然后 FROM CUXOEXPRAVA 上点击按钮

跳回from CUXOMWB 并重新执行查询,此时 from CUXOEXPRAVA  关闭,而且from CUXOMWB 只有一个打开的;

实现过程来自:form APXINWKB 和 APXRMTCH

--app_window.close_first_window;

/* This form is closed by the trigger AP_CLOSE_MATCH_FORMS in APXINWKB

This trigger fires because when the corresponding matching form is

closed the global variable WHEN_FORM_NAVIGATE is set to the value of this trigger and

a go_form call is made. When this trigger is executed, the corresponding matching

form needs to be closed and other  logic like requerying the distributions

and updating the distribution total are executed. the id of the form to be closed

is set in the global variable :GLOBAL.AP_MATCH_FORM_ID */

FIRST :

form CUXOEXPRAVA 上创建一些需要的参数,CUXOMWB_form_id 为必须

form CUXOMWB 上打开 CUXOEXPRAVA 代码时传参

/*  -- Get the form id of the invoice workbench

l_form_id   FormModule;

l_CUXOMWB_form_id Number;

l_form_id        := find_form(:system.current_form);

l_CUXOMWB_form_id := l_form_id.id;*/

FORM CUXOMWB 上创建触发器  CUX_CLOSE_PRICE_FORMS 调用 cuxomwb.close_price_forms(‘CUXOEXPRAVA‘);

PROCEDURE CLOSE_PRICE_FORMS(form_name VARCHAR2) IS

form_id                    formmodule;

l_PRICE_form_id         NUMBER;

BEGIN

l_PRICE_form_id := :global.PRICE_form_id;

-- need to set global variables back to null as soon as possible.

:global.when_form_navigate := NULL;

:global.PRICE_form_id   := NULL;

form_id.id                 := l_PRICE_form_id;

IF id_null(form_id) THEN

NULL;

ELSE

close_form(form_id);

END IF;

END close_price_forms;

form  CUXOEXPRAVA 上需要关闭的地方

PROCEDURE back_order_btn_pressed IS

l_rect_form_id   FormModule;

l_inv_form_id   FormModule;

BEGIN

l_rect_form_id := find_form(:system.current_form);

:GLOBAL.PRICE_form_id := l_rect_form_id.id;

:GLOBAL.WHEN_FORM_NAVIGATE := ‘CUX_CLOSE_PRICE_FORMS‘;

l_inv_form_id.id := :parameter.CUXOMWB_form_id; --此参数是 form CUXOMWB excute 打开 form CUXOEXPRAVA 时传过来的

go_form(l_inv_form_id);

END back_order_btn_pressed;

form CUXOMWB 上从新执行查询

在 form CUXOMWB 上触发器 when-window-actived TRIGGER 判断变量来做刷新动作

从一个窗口导航到另一个窗口(这两个窗口都是打开的),要传递参数的话请使用WHEN–FORM–NAVIGATE,记住不要直接为这个触发器编码,而要使用全局变量来传递参数。要做到这样,请在一个自定义触发器中使用全局变量  GLOBAL.WHEN_FORM_NAVIGATE来传递参数。在使用GO_FORM这个内置过程导航到另外一个窗口时也会触发WHEN–FORM–NAVIGATE这个触发器。

举例:查询某个项目(字段)

很可能有这样的需求,导航到另外一个表单,并根据这个表单中的某个项目来查询记录。假设你现在有两个表单,一个名叫ORDERS,另一个名叫CATALOGS,现在你从ORDERS表单导航到CATALOGS表单,并要根据ORDERS表单上的一个名叫PART_NUMBER的项目来查询CATALOGS表单中的记录。解决方案如下:

u      步骤1:在ORDERS表单中创建一个全局变量GLOBAL.PART_NUMBER,并将要查询的值赋给这个全局变量。

u      步骤2:在ORDERS表单中创建另一个全局变量GLOBAL.WHEN_FORM_NAVIGATE,并赋值为字符串QUERY_PART_NUMBER。

u      步骤3:在CATALOGS表单中创建一个自定义触发器QUERY_PART_NUMBER,代码中包含EXECUTE_QUERY以使导航到这个表单时执行查询。

u      步骤4:在表单CATALOGS的PRE-QUERY触发器中编写如下代码:

copy(’GLOBAL.PART_NUMBER, ’PARTS_BLOCK.PART_NUMBER’);

copy(’’,’GLOBAL.PART_NUMBER’)

时间: 2024-11-08 19:58:17

EBS form 之间跳转实现(form 关闭)的相关文章

【EBS FORM】进阶3. 在FORM中调用外部功能

来源:http://www.cnblogs.com/chenyongjun/p/3940631.html 1. fun_function.execute fnd_function.execute用于访问指定的基于表单(Form)且可访问的功能(不可访问将抛出错误消息),Oracle建议以此过程替换原内置函数OPEN_FORM.因为fnd_function.execute可以绕开应用安全验证并找到功能正确的访问路径. 可访问说明: 访问的功能需挂在同一职责的相同菜单下,如果被调用的功能不想在菜单下

SSM Controller 页面之间跳转 重定向,有参 无参问题

需求:spring MVC框架controller间跳转,需重定向.有几种情况:不带参数跳转,带参数拼接url形式跳转,带参数不拼接参数跳转,页面也能显示. (1)我在后台一个controller跳转到另一个controller,为什么有这种需求呢,是这样的.我有一个列表页面,然后我会进行新增操作,新增在后台完成之后我要跳转到列表页面,不需要传递参数,列表页面默认查询所有的.        方式一:使用ModelAndView        return new ModelAndView("re

ios俩个APP之间跳转、传值

两个APP之间的跳转是通过[[UIApplication sharedApplication] openURL:url]这种方式来实现的. 1.首先设置第一个APP的url地址 2.接着设置第二个APP的url地址 3.需要跳转的时候 NSString *urlString = [NSString stringWithFormat:@"AppJumpSecond://%@",textField.text]; [[UIApplication sharedApplication] open

Jquery组织Form表单提交之Form submission canceled because the form is not connected

有时候导出Excel时需要根据某些条件筛选数据,然后将数据通过NPOI生成Excel并导出.组织数据时可以通过放到一个表单中,某些场景是使用脚本(如:jquery)组织一个form(通过字符串拼接),然后将这个from的转换成jquery对象或者Dom对象,再调用对应的submit方法. 例子如下,有一个html页面 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" co

去除警告,打电话,发信息,应用程序之间跳转,打印沙盒路径,字符串名字转换方法,包装导航控制器等的代码

从偏好设置中读取值: 打电话代码: 发信息代码: 打印沙盒路径代码: 应用程序之间跳转代码: 跳转到苹果商店代码: 去除警告代码: 根据字符串名称转换成相对应方法的代码: #import "SZMSettingsCell.h" @implementation SZMSettingsCell //选择不同的cell类型 + (UITableViewCellStyle)cellStyleWithDict:(NSDictionary *)dict{ UITableViewCellStyle

jQuery Form 表单提交插件----Form 简介,官方文档,官方下载地址

 一.jQuery Form简介 jQuery Form插件是一个优秀的Ajax表单插件,可以非常容易地.无侵入地升级HTML表单以支持Ajax.jQuery Form有两个核心方法 -- ajaxForm() 和 ajaxSubmit(), 它们集合了从控制表单元素到决定如何管理提交进程的功能.另外,插件还包括其他的一些方法: formToArray().formSerialize().fieldSerialize().fieldValue().clearForm().clearFields(

ios两个app之间跳转,传值的实现

两个APP之间的跳转是通过[[UIApplication sharedApplication] openURL:url]这种方式来实现的. 1.首先设置第一个APP的url地址 2.接着设置第二个APP的url地址 3.需要跳转的时候 NSString *urlString = [NSString stringWithFormat:@"AppJumpSecond://%@",textField.text]; [[UIApplication sharedApplication] open

&lt;s:form action=&quot;login&quot;...与&lt;s:form action = &quot;login.action&quot;.的区别

1.<s:form action="login" namespace="/login"> 它表示的是<form id="login" name="login" action="/Action/login/login.action" method="post"> 因为它使用了struts标签,后面会自动加.action,而且namespace会起作用 2.<s

PHP历程(PHP与MYSQL数据库之间连接、创建和关闭)

<?php define('WXLEVELS_DB_HOST','127.0.0.1'); //服务器 define('WXLEVELS_DB_USER','root'); //数据库用户名 define('WXLEVELS_DB_PASS','123456'); //数据库密码 define('WXLEVELS_DB_NAME','PvUv'); //默认数据库 define('DB_CHARSET','utf8'); //数据库字符集 define('TIMEZONE',"PRC&qu