在Oracle Form中,如何实现自动编号(行号)的功能
来源:互联网 发布:sql 时间差小时 编辑:程序博客网 时间:2024/04/29 17:29
方法一、
只需要将“序号”定义成公式,并将公式设置为:get_block_property('block_name',current_record)就可以实现了,或者把这行语句放到“When-Create-Record”触发器中。
缺点:增改删时,行号不能自动刷新。
方法二、
在block的三个触发器中添加相应的代码:
Key-Crerec:
DECLARE
LINE NUMBER;
BEGIN
LINE := :SYSTEM.CURSOR_RECORD;
LOOP
IF :SYSTEM.LAST_RECORD = 'TRUE' THEN
EXIT;
ELSE
NEXT_RECORD;
:blk.ID := :SYSTEM.CURSOR_RECORD + 1;
END IF;
END LOOP;
GO_RECORD(LINE);
CREATE_RECORD;
:blk.ID := :SYSTEM.CURSOR_RECORD;
END;
Key - Delrec:
DECLARE
LINE NUMBER;
BEGIN
DELETE_RECORD;
LINE := :SYSTEM.CURSOR_RECORD;
LOOP
:blk.ID := :SYSTEM.CURSOR_RECORD;
IF :SYSTEM.LAST_RECORD = 'TRUE' THEN
EXIT;
ELSE
NEXT_RECORD;
END IF;
END LOOP;
GO_RECORD(LINE);
END;
When - Create - Record:
:blk.ID := :SYSTEM.TRIGGER_RECORD;
缺点:对于记录数很少的table适用,当table中的记录很多时,由于使用了循环操作,所以会影响效率。
为了防止按F11时也生成序号,影响查询,可以在生成前加入以下条件:
IF (:SYSTEM.MODE != ‘ENTER-QUERY’) THEN
- 在Oracle Form中,如何实现自动编号(行号)的功能
- 如何在DataGrid中添加自动编号的功能
- 客户化Form中实现行号功能
- 如何在ASP.NET中为DataGrid添加自动编号的功能
- 在SQL server中设置表的自动编号功能
- 在SQL server中设置表的自动编号功能
- 在DataGrid中添加自动编号的功能
- 在SQL server中设置表的自动编号功能
- 在SQL server中设置表的自动编号功能
- 在word中如何实现章节标题自动编号
- 如何在Oracle 中实现类似自动增加 ID 的功能?
- 如何在Oracle 中实现类似自动增加 ID 的功能?
- word中如何实现多级编号的自动生成?
- 如何在SQL中设置自动编号
- 如何在WORD2010中取消自动编号?
- 在SQL 2000中实现自动编号
- 在Oracle如何通过配置可以禁用Form的导出功能(Form-->Export的功能)
- Oracle中添加自动编号的序列
- VMware下的Ubuntu硬盘空间扩容
- 使用Pyqt在Linux下开发GUI桌面应用
- NSCache
- 根据学校的业务需求,主攻关于高校自动排课的算法实现
- shell之变量基础
- 在Oracle Form中,如何实现自动编号(行号)的功能
- C++语法基础--顺序容器(三)--关系操作符,容器大小的操作,访问元素,删除元素,查找元素
- 带默认参数的构造函数
- WIN7 C盘空间
- 20130707 【南华大学 ACM】 新生赛第一场 【B.Arithmetic Progression】
- NSSortDescriptor
- 北京设计模式学习组BJDP第1次活动(2013.05.04)回顾会纪要
- 类和结构之一
- 压缩感知和稀疏表示的经典文献