触发器执行顺序

1.当打开FORM时:

(1)PRE-FORM

(2)PRE-BLOCK(BLOCK级)

(3)WHEN-NEW-FORM-INSTANCE

(4)WHEN-NEW-BLOCK-INSTANCE

(5)WHEN-NEW-RECORD-INSTANCE

(6)WHEN-NEW-ITEM-INSTANCE

2.当填写一行记录完成后,光标移动到下一条记录的时候:

(1)WHEN-VALIDATE-RECORD

(只将填写的记录与数据库中已存在的记录作唯一性的验证,如果只是页面上的数据重复而数据库中没有与其重复的值则不会报错.)

(2)WHEN-NEW-RECORD-INSTANCE

(3)WHEN-NEW-ITEM-INSTANCE

3.当点击“保存”时

(1)WHEN-VALIDATE-RECORD

(将页面上的所有数据提交到数据库,若页面上有重复的数据,则提交第一次时成功但只是将数据先写到数据库中一类似临时表的地方,在提交第二条重复记录的时候报错,执行事务回滚,原来执行成功的指令也将被撤消)

(2)PRE-INSERT

(3)ON-INSERT

(4)POST-INSERT

(5)POST-FORMS-COMMIT

(6)PRE-BLOCK(BLOCK级)

(7)KEY-COMMIT

(8)WHEN-NEW-ITEM-INSTANCE

4.当光标移动到当前数据块中已经显示的行上时:

(1)WHEN-REMOVE-RECORD

(2)WHEN-NEW-RECORD-INSTANCE

(3)WHEN-NEW-ITEM-INSTANCE

当在该行上的不同ITEM移动时:

(4)WHEN-NEW-ITEM-INSTANCE

5.当要进行修改时(在记录中的某个项上进行了修改时):

(1)ON-LOCK

6.在修改完成后进行保存时:

(1)WHEN-VALIDATE-RECORD

(2)PRE-UPDATE

(3)ON-UPDATE

(4)POST-FORMS-COMMIT

(5)PRE-BLOCK(BLOCK级)

(6)KEY-COMMIT

(7)WHEN-NEW-ITEM-INSTANCE

7.删除一条记录时:

(1)ON-LOCK

(2)WHEN-REMOVE-RECORD

(3)KEY-DELREC

(4)WHEN-NEW-RECORD-INSTANCE

(5)WHEN-NEW-ITEM-INSTANCE

8.F11查询过程:

(1)WHEN-CLEAR-BLOCK

(2)WHEN-NEW-RECORD-INSTANCE

(3)WHEN-NEW-ITEM-INSTANCE

在输入查询条件后点CTRL+F11:

(4)PRE-QUERY

(5)WHEN-CLEAR-BLOCK

(6)POST-QUERY

(7)WHEN-NEW-RECORD-INSTANCE

(8)WHEN-NEW-ITEM-INSTANCE

9.CRRL+F11:

(1)WHEN-CLEAR-BLOCK

(2)PRE-QUERY

(3)WHEN-CLEAR-BLOCK

(4)POST-QUERY(每查一条记录,触发一次)

(5)WHEN-NEW-RECORD-INSTANCE

(6)WHEN-NEW-ITEM-INSTANCE

10.从查询状态(F11)转为输入状态(F4)时:

(1)WHEN-CLEAR-BLOCK

(2)KEY-EXIT

(3)WHEN-NEW-RECORD-INSTANCE

(4)WHEN-NEW-ITEM-INSTANCE

11.手电筒查询过程:

(1)QUERY_FIND(BLOCK级)

输入查询条件后,点击“查询”按钮:

(2)WHEN-CLEAR-BLOCK

(3)PRE-QUERY

(4)WHEN-CLEAR-BLOCK

(5)POST-QUERY

(6)WHEN-NEW-RECORD-INSTANCE

(7)WHEN-NEW-ITEM-INSTANCE

12.点击“New”时:

(1)WHEN-NEW-RECORD-INSTANCE

(2)WHEN-NEW-ITEM-INSTANCE

13.点击“EditField”时:

(1)KEY-EDIT

14.点击“WindowHelp”时:

(1)KEY-HELP

15.点击“ClearRecord”时:

(1)WHEN-REMOVE-RECORD

(2)POST-QUERY

(3)WHEN-NEW-RECORD-INSTANCE

(4)WHEN-NEW-ITEM-INSTANCE

16.点击F4关闭时:

(1)KEY-EXIT

(2)POST-FORM

17.点击“CloseForm”按钮关闭时:

(1)KEY-EXIT

(2)POST-FORM

18.点击“Translations”按钮时:

(1)TRANSLATIONS

19.点击小叉号关闭时:

(1)WHEN-WINDOW-CLOSED

(2)CLOSE-WINDOW

(3)KEY-EXIT

(4)POST-FORM

20.选中LOV列表:

(1)KEY-LISTVAL

(2)WHEN-NEW-ITEM-INSTANCE

21.选中记录前面的小条时:

(1)WHEN-NEW-RECORD-INSTANCE

(2)WHEN-NEW-ITEM-INSTANCE(数据项级)

(3)WHEN-NEW-ITEM-INSTANCE

22.光标上下移动时:

(1)WHEN-NEW-RECORD-INSTANCE

(2)WHEN-NEW-ITEM-INSTANCE

时间: 2024-11-05 23:32:26

触发器执行顺序的相关文章

FORM触发器执行顺序

触发器执行顺序: 1. 当打开FORM时: (1) PRE-FORM (2) PRE-BLOCK(BLOCK级) (3) WHEN-NEW-FORM-INSTANCE (4) WHEN-NEW-BLOCK-INSTANCE (5) WHEN-NEW-RECORD-INSTANCE (6) WHEN-NEW-ITEM-INSTANCE 2. 当填写一行记录完成后,光标移动到下一条记录的时候: (1) WHEN-VALIDATE-RECORD (只将填写的记录与数据库中已存在的记录作唯一性的验证,如

ORACLE FormBuilder触发器执行顺序

1.当打开FORM时: (1)PRE-FORM (2)PRE-BLOCK(BLOCK级) (3)WHEN-NEW-FORM-INSTANCE (4)WHEN-NEW-BLOCK-INSTANCE (5)WHEN-NEW-RECORD-INSTANCE (6)WHEN-NEW-ITEM-INSTANCE 2.当填写一行记录完成后,光标移动到下一条记录的时候: (1)WHEN-VALIDATE-RECORD (只将填写的记录与数据库中已存在的记录作唯一性的验证,如果只是页面上的数据重复而数据库中没有

Oracle EBS中有关Form的触发器的执行顺序

http://blog.csdn.net/postfxj/article/details/8135769 触发器执行顺序: 1.  当打开FORM时: (1)       PRE-FORM (2)       PRE-BLOCK(BLOCK级) (3)       WHEN-NEW-FORM-INSTANCE (4)       WHEN-NEW-BLOCK-INSTANCE (5)       WHEN-NEW-RECORD-INSTANCE (6)       WHEN-NEW-ITEM-I

【转】mysql触发器的实战(触发器执行失败,sql会回滚吗)

1   引言 Mysql的触发器和存储过程一样,都是嵌入到mysql的一段程序.触发器是mysql5新增的功能,目前线上凤巢系统.北斗系统以及哥伦布系统使用的数据库均是mysql5.0.45版本,很多程序比如fc-star管理端,sfrd(das),dorado都会用到触发器程序,实现对于数据库增.删.改引起事件的关联操作.本文介绍了触发器的类型和基本使用方法,讲述了触发器使用中容易产生的误区,从mysql源码中得到触发器执行顺序的结论,本文最后是实战遭遇的触发器经典案例.没有特殊说明时,本文的

11. SQL -- 约束、Check、触发器的执行顺序

让我们看看约束. Check 和触发器在这个过程中的先后顺序,或许能加深些对事务的理解. CREATE TABLE TestTable ( ID         INT    CONSTRAINT PK_TestTable_id PRIMARY KEY, UniqueID   INT    UNIQUE, Number     INT    CHECK (Number >= 10 AND Number<=100), NonNULL    INT    NOT NULL ); CREATE TA

Oracle一个事务中的Insert和Update执行顺序

今天碰到了一个奇怪的问题,是关于Oracle一个事务中的Insert和Update语句的执行顺序的问题. 首先详细说明下整个过程: 有三张表:A,B,C,Java代码中有一段代码是先在表A中插入一条数据,然后再更新表B的两个字段,更新的两个字段是特定值.并且插入和更新在一个事务中. 有个需求需要在表A添加一个Insert的行级触发器,在触发器里,插入表A一行记录后去表B查看更新的两个字段是否满足特定条件, 如果表B的两个字段同时等于特定值,则把表A和表B的数据整合下放到表C.触发器的初衷就是这样

今天说一下DML触发器的顺序

因为05之后的版本允许了一个对象有多个after触发器,所以呢~顺序方面还是要留意一下下的.比如我现在要往一个测试表里面添加多个触发器. USE Test GO CREATE TABLE AAA3 (ID INT IDENTITY(1,1),Name NVARCHAR(50)) GO CREATE TRIGGER TR_AAA3_1 ON AAA3 FOR INSERT AS BEGIN PRINT 'TRIGGER1' END GO CREATE TRIGGER TR_AAA3_2 ON AA

iOS程序执行顺序和UIViewController 的生命周期(整理)

说明:此文是自己的总结笔记,主要参考: iOS程序的启动执行顺序 AppDelegate 及 UIViewController 的生命周期 UIView的生命周期 言叶之庭.jpeg 一. iOS程序的启动执行顺序 程序启动顺序图 iOS启动原理图.png 具体执行流程 程序入口进入main函数,设置AppDelegate称为函数的代理 程序完成加载[AppDelegate application:didFinishLaunchingWithOptions:] 创建window窗口 程序被激活[

修饰符-包-内部类-代码块执行顺序

1.访问权限修饰符     从大到小的顺序为:public--protected--default--private     private--只能在同一类中使用;     default--不用写出来,默认不加.可以被同一包中的类使用     protected--可以被不同包的子类使用     public--可以被不同包的其它类使用 2.各种修饰符的修饰对象(可修饰哪些:类/接口/方法/属性)(多个修饰符连用是可以没有顺序的!)     1)访问权限修饰符:public/default--