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
(只将填写的记录与数据库中已存在的记录作唯一性的验证,如果只是页面上的数据重复而数据库中没有与其重复的值则不会报错.)
(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-INSTANC
12.点击“New”时:
(1) WHEN-NEW-RECORD-INSTANCE
(2) WHEN-NEW-ITEM-INSTANCE
13. 点击“Edit Field”时:
(1)KEY-EDIT
14.点击“Window Help”时:
(1)KEY-HELP
15.点击“Clear Record”时:
(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.点击“Close Form”按钮关闭时:
(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
FORM触发器执行顺序的更多相关文章
- [转]Oracle Form 触发器执行顺序
Trigger 不是数据库中的触发器,不过功能类似,都是当某个事件发生的时候会触发. Trigger中可以编写代码,当对应事件发生的时候就会执行该Trigger中的代码. Oracle Form中的T ...
- oracle form 触发器执行顺序及键定义[Z]
1当打开FORM时: (1)PRE-FORM (2)PRE-BLOCK(BLOCK级) (3)WHEN-NEW-FORM-INSTANCE (4)WHEN-NEW-BLOCK-INSTANCE (5) ...
- sp_settriggerorder 设置触发器执行顺序
sp_settriggerorder (Transact-SQL) 本主题适用于:SQL Server(从 2008 开始)Azure SQL 数据库Azure SQL 数据仓库并行数据仓库 ...
- ORACLE FormBuilder触发器执行顺序
1.当打开FORM时: (1)PRE-FORM (2)PRE-BLOCK(BLOCK级) (3)WHEN-NEW-FORM-INSTANCE (4)WHEN-NEW-BLOCK-INSTANCE (5 ...
- sqlserver触发器执行顺序【未经验证】
exec sp_settriggerorder @triggername = 'tr_customer_1', @order = 'first', @stmttype = 'insert',@name ...
- Oracle EBS中有关Form的触发器的执行顺序
http://blog.csdn.net/postfxj/article/details/8135769 触发器执行顺序: 1. 当打开FORM时: (1) PRE-FORM (2) ...
- 【转】mysql触发器的实战(触发器执行失败,sql会回滚吗)
1 引言Mysql的触发器和存储过程一样,都是嵌入到mysql的一段程序.触发器是mysql5新增的功能,目前线上凤巢系统.北斗系统以及哥伦布系统使用的数据库均是mysql5.0.45版本,很多程 ...
- MySQL的语句执行顺序
MySQL的语句执行顺序 MySQL的语句一共分为11步,如下图所标注的那样,最先执行的总是FROM操作,最后执行的是LIMIT操作.其中每一个操作都会产生一张虚拟的表,这个虚拟的表作为一个处理的输入 ...
- MySQL语句执行顺序
执行顺序:见:http://www.cnblogs.com/rollenholt/p/3776923.html 下面我们来具体分析一下查询处理的每一个阶段 FORM: 对FROM的左边的表和右边的表计 ...
随机推荐
- (spring-第17回【AOP基础篇】) 创建增强类
一. 增强类包含的信息: a) 横切逻辑(插入的具体代码) b) 部分连接点信息(在方法的哪个位置插入代码,比如方法前.方法后等). 二. 增强的类型 每一种增强有一个需要实现的增强类 ...
- SQL 经典练习题
create database 练习题gouse 练习题go create table Student( Sno char(3) primary key, Sname char(8) not null ...
- 《Visual C++并行编程实战》译者序
说来凑巧,当开始着手这本书的翻译时,我刚刚入手了自己第一台四核计算机,而翻译工作临近完成之时,我又为自己添置了一台iPad 2(这是一台双核计算机).由此可见,多核计算机已经完全进入了我的日常生活.鉴 ...
- Python copy and deepcopy
Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块. 1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象. 2. copy.deep ...
- Vue知识点
1. Vue生命周期图示: 2.插值: 文本:{{ message }}: 纯html:v-html="xxx"; 属性:v-bind:id="xxx"; 使用 ...
- [Eclipse] - 集成Tomcat热加载插件
使用Eclipse + Tomcat,要使用热加载,总是会重启tomcat webapp. 可以使用这个插件:jrebel 如果是Tomcat 7.0+版本,需要使用jrebel5.5.1+的版本,不 ...
- SQL 查询某个表被哪些存储过程使用到
--1.查询某个表被哪些存储过程使用到 : select distinct object_name(id) from syscomments where id in (select object_id ...
- IOS开发-属性动画和关键帧动画的使用
CAMediaTiming是一个协议(protocol),CAAnimation是所有动画类的父类,但是它不能直接使用,应该使用它的子类. 继承关系: CoreAnmiation 核心动画 简写CA ...
- phonegap文件,目录操作以及网络上传,下载文件(含demo)
正在做一个跨平台的应用,需要使用phonegap进行文件的一些基本操作. 需求如下:可以选择本地图片,或者从相机选择图片,并进行显示在本地,然后上传到服务器,以及可以从服务器下载图片显示出来,如果本地 ...
- Linux中cp和scp命令的使用方法
Linux为我们提供了两个用于文件copy的命令,一个是cp,一个是scp,但是他们略有不同. cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件 scp --- 主要是在不同的 ...