云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > Oracle - EBS - Form - 触发器学习大全

Oracle - EBS - Form - 触发器学习大全

  • 62 次阅读
  • 3 次下载
  • 2025/6/14 23:50:11

文档密级:内部公开

Oracle EBS Form Trigger学习大全

打开,关闭,创建,更新记录的trigger次序 PRE-……

在进入一个form,或是导航到一个新的block时触发,PRE-……系列的触发器一般是在WHEN-NEW-……-INSTANCE系列之前,它们如果失败了的话,就不能成功导航到下一个对象了,只能留在当前的位置。在这些触发器里可以设置一些判断条件来限制是否可以导航到新的位置。

WHEN-NEW-……-INSTANCE

这一类的trigger都是当鼠标光标每次落到一个新的block,record,item上时触发的,而且就算失败了,也不会发生什么错误。但是when-new-form-instance,只有当form启动时,光标导航到第一个导航块的第一个导航item时触发,如果一个应用有多个form,当光标在各个form之间转换时,并不会触发它。

POST-TEXT-ITEM和WHEN-VALIDATE-ITEM

Post-text-item的触发点:当输入的光标从一个Text-Item 转到其它item,可以用它来改变item的值,而when-Validate-item虽然也是在离开前触发,但是作用不同,Post-Text-Item本身是没有验证的,when-Validate-item可以用来补充一些验证(除了form本身的验证),但是当form验证成功以后,会把item标志为?valid?,而不会再去验证了,如果这时我们再去修改它的值,那么就有可能会把无效的值导入到数据库。在创建和更新一条记录时,先触发when-Validate-item,再触发Post-Text-Item,然后是when-Validate-record。

POST-……系列的都是离开当前的block,record,item时触发的

此资料属深南电路所有,未经许可,不得扩散。

文档密级:内部公开

WHEN-WINDOW-ACTIVATED

做原材料属性修改平台时,第一次使用这个触发器,用来从另一个window返回时,刷新当前window,代码写在了这个触发器里。使用之前用fnd_message.debug试验了一下,打开窗口后不停的弹出message。只要这个窗口在活动期间就会不停的执行这个触发起里面的代码,所以执行的代码应该用if条件限制一下。

Form的Trigger的优先级是从item,到block,到form级别,如果另外设置Execution Hierarch属性(override,before,after),则按照设置后的顺序执行。如果是override的话,则执行完这个级别的触发器,就不往上执行了,before就是执行完这个级别的触发器后,如果上一个级别也有这个触发器的话,继续去执行,after就是先去执行上一个级别的触发器,然后再回来执行。感觉触发器比较难理解的还是每一种触发器触发的时间,和在开发中怎么使用。目前了解的就是pre-…,

when-new-…-instance,when-…-validate,post-query和几个on-…触发器

验证代码写在WHEN-VALIDATE-RECORD和PRE-INSERT的不同 验证代码写在WHEN-VALIDATE-RECORD和PRE-INSERT的不同

1、写在WHEN-VALIDATE-RECORD,可以及时地提示错误信息,如果验证时要和后台数据库关联的话,那么要写在PRE-INSERT,因为PRE-INSERT,ON-INSERT都是一条一条记录执行的,这样批量录入时,每一条记录的验证都可以取到最新的数据库记录。 2、 批量录入时,有一条的PRE-INSERT不成功,则所有记录都不能保存成功

Post-Query和When-New-Record-Instance关系 Post-Query和When-New-Record-Instance

假定数据库中有100条记录,块设置显示行数为10,那么当光标在显示出来的记录间移动

此资料属深南电路所有,未经许可,不得扩散。

文档密级:内部公开

时,只触发When-New-Record-Instance,不触发Post-Query。当光标移到第十一条记录时,触发Post-Query

不可见item的when-validate-item使用

问题:如果一个item是不可见的,那么改变它的值,还会触发when-validate-item吗? 结果:会触发,但不是在改变它的值后触发,而是在光标移到另一个block时。关闭窗口时也触发了。

测试:设block1的item1为不可见,在item2的when-validate-item给tem1赋值,运行时,改变item2的值后,在block1的各item间移动光标都没有触发item1的when-validate-item,直到光标离开这个block,或关闭窗口时才触发。

ACCEPT Trigger 讲解

ACCEPT APP_STANDARD.EVENT(?ACCEPT?); 这个触发器处理菜单或工具条上调用Save and Proceed (保存并继续)动作。它执行保存,并移动到指定当作第一个导航块的块上。 替换这个触发器中的代码,或创建块级触发器并把执行类型指定为?Override?

FOLDER_RETURN_ACTION FOLDER_RETURN_ACTION

这个触发器允许指定客户华的文件夹事件 用需要的处理文件夹动作的代码替换

此资料属深南电路所有,未经许可,不得扩散。

文档密级:内部公开

KEY_DUPREC

APP_STANDARD.EVENT(?KEY-DUPREC?);

这个触发器禁用了Oracle 表单默认的重复记录的功能

KEY-CLRFRM KEY-CLRFRM

APP_STANDARD.EVENT(?KEY-CLRFRM?); 这个触发器在试图清空form前验证记录

在原来的代码后添加附加的代码,通常你你应添加GO_BLOCK如果form中存在多个的区域,使用GO_BLOCK在调用清空from操作后重新填充控制菜单

KEY_MENU KEY_MENU

APP_STANDARD.EVENT(?KEY-MENU?);

这个触发器禁用了Oracle froms的Block Menu 命令

为了启用从特定的块对替代的块通过键盘操作,那么编写块级KEY_MENU并且设定执行类型为?Override ?这个触发器会打开一个与弹出式菜单相同的LOV

KEY_LISTVAL KEY_LISTVAL

APP_STANDARD.EVENT(?KEY-LISTVAL?);

此资料属深南电路所有,未经许可,不得扩散。

搜索更多关于: Oracle - EBS - Form - 触发器学习大全 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

文档密级:内部公开 Oracle EBS Form Trigger学习大全 打开,关闭,创建,更新记录的trigger次序 PRE-…… 在进入一个form,或是导航到一个新的block时触发,PRE-……系列的触发器一般是在WHEN-NEW-……-INSTANCE系列之前,它们如果失败了的话,就不能成功导航到下一个对象了,只能留在当前的位置。在这些触发器里可以设置一些判断条件来限制是否可以导航到新的位置。 WHEN-NEW-……-INSTANCE 这一类的trigger都是当鼠标光标每次落到一个新的block,record,item上时触发的,而且就算失败了,也不会发生什么错误。但是when-new-form-instance,只有当form启动时,光标导航到第一个导航块的第一个导航item时触发,如果一个应用有

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com