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’)
EBS form 之间跳转实现(form 关闭)的更多相关文章
- SSM Controller 页面之间跳转 重定向,有参 无参问题
需求:spring MVC框架controller间跳转,需重定向.有几种情况:不带参数跳转,带参数拼接url形式跳转,带参数不拼接参数跳转,页面也能显示. (1)我在后台一个controller跳转 ...
- iOS应用之间跳转
本篇博文将涉及到以下知识点: app应用跳转的原理解析 如何实现两个app应用之间的跳转 如何实现两个app之间跳转到指定界面 二.应用跳转原理 相信从一个应用跳转到另一个应用大家并不陌生,最常见的莫 ...
- jQuery Form 表单提交插件----Form 简介,官方文档,官方下载地址
一.jQuery Form简介 jQuery Form插件是一个优秀的Ajax表单插件,可以非常容易地.无侵入地升级HTML表单以支持Ajax.jQuery Form有两个核心方法 -- ajaxF ...
- jquery提交form表单插件jquery.form.js
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- {Django基础十之Form和ModelForm组件}一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 ModelForm
Django基础十之Form和ModelForm组件 本节目录 一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 Model ...
- Jquery组织Form表单提交之Form submission canceled because the form is not connected
有时候导出Excel时需要根据某些条件筛选数据,然后将数据通过NPOI生成Excel并导出.组织数据时可以通过放到一个表单中,某些场景是使用脚本(如:jquery)组织一个form(通过字符串拼接), ...
- 基于Django Form源码开发自定义Form组件
import copy import re class ValidateError(Exception): def __init__(self, detail): self.detail = deta ...
- ios两个app之间跳转,传值的实现
两个APP之间的跳转是通过[[UIApplication sharedApplication] openURL:url]这种方式来实现的. 1.首先设置第一个APP的url地址 2.接着设置第二个AP ...
- [oldboy-django][2深入django]学生管理(Form)-- 添加(美化Form表单:通过form给前端标签添加属性)
1 在student_list添加一个a标签, <p><a href="/app01/add_student" class="btn btn-prima ...
随机推荐
- Java并发框架——AQS之如何使用AQS构建同步器
AQS的设计思想是通过继承的方式提供一个模板让大家可以很容易根据不同场景实现一个富有个性化的同步器.同步器的核心是要管理一个共享状态,通过对状态的控制即可以实现不同的锁机制.AQS的设计必须考虑把复杂 ...
- Java基本语法-----java二维数组
由于word里的样式在csdn上调太麻烦了,所以我再次贴图了,后面二维数组那里是文字的,大家将就看吧. 二维数组常见的操作: 1.遍历二维数组 2.对二维数组求和 class Demo { // 定义 ...
- SSO 基于Cookie+fliter实现单点登录 实例解析(一)
接上文,SSO的理论讲解,接下来实践实践! 1.使用Cookie解决单点登录 技术点: 1.设置Cookie的路径为setPath("/").即Tomcat的目录下都有效 2.设置 ...
- Linux之dmesg命令
功能说明:显示内核缓冲区系统控制信息的工具 ,比如系统在启动时的信息会写到/var/log/中.语 法:dmesg [-cn][-s <缓冲区大小>] 补充说明:kernel会将开机信息存 ...
- UNIX网络编程——揭开网络编程常见API的面纱【上】
Linux网络编程API函数初步剖析 今天我们来分析一下前几篇博文中提到的网络编程中几个核心的API,探究一下当我们调用每个API时,内核中具体做了哪些准备和初始化工作. 1.socket(famil ...
- Centos7安装Tair及配置测试
系统环境 Centos7 64位 外网ip 182.254.145.66 内网ip 10.105.23.114 安装位置 /usr/local/tair Tair介绍 参见官网 安装 想了半天,我还是 ...
- React Native自动化测试
大凡做软件开发,肯定会涉及到很多的测试,本地测试,Junit测试,用例测试等,今天就来说说RN的测试. React Native的官方代码仓库里有一些测试代码,你可以在贡献代码之后回归测试一下,以检测 ...
- (NO.00005)iOS实现炸弹人游戏(五):游戏数据的初始化(二)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 我们现在来依次看一下上篇中提到的各个方法,首先介绍的是updat ...
- 最简单的基于FFmpeg的AVDevice例子(屏幕录制)
=====================================================最简单的基于FFmpeg的AVDevice例子文章列表: 最简单的基于FFmpeg的AVDev ...
- nginx 详解反向代理负载均衡
什么是反向代理负载均衡 使用代理服务器可以将请求转发给内部的Web服务器,使用这种加速模式显然可以提升静态网页的访问速度.因此也可以考虑使用这种技术,让代理服务器将请求 均匀转发给多台内部Web服务器 ...