1.怎样实现手电筒查询
1.新建查询快query_find查询块, 包括window、canvas、block
2.在from级别的procedure中 加入如下方法,实现赋值
3.在block块中添加trigger (pre-query) :MAIN.event('PRE-QUERY');
4.新建查询包(QUERY_FIND),包快如下的procedure
PACKAGE BODY QUERY_FIND IS
/*=====================================
** PROCEDURE: query_find() 此处代码将弹出查询块,其执行模式为OVERRIDE |
|
**=====================================*/
PROCEDURE query_find IS
BEGIN
app_find.query_find('MAIN', 'QUERY_FIND', 'QUERY_FIND');
END query_find;
/*=====================================
** PROCEDURE: btn_new()
**=====================================*/
PROCEDURE btn_new(p_event VARCHAR2) IS
BEGIN
IF (p_event = 'WHEN-BUTTON-PRESSED') THEN
app_find.new('MAIN');
END IF;
END;
/*=====================================
** PROCEDURE: btn_find()
**=====================================*/
PROCEDURE btn_find IS
BEGIN
:parameter.G_query_find := 'TURE';
app_find.find('MAIN');
:parameter.G_query_find := 'FALSE';
END;
/*=====================================
** PROCEDURE: event() 执行模式为before
**=====================================*/
PROCEDURE event(event VARCHAR2) IS
BEGIN
IF event = 'PRE-QUERY' THEN
app_query.reset('MAIN');
IF :parameter.g_query_find = 'TURE' THEN
copy(name_in('query_find.REQUESTOR'), 'MAIN.REQUESTOR');
app_find.query_date_range(:query_find.transaction_date_from,
:query_find.transaction_date_to,
'MAIN.REQUEST_DATE');
:parameter.g_query_find := 'FALSE';
END IF;
END IF;
END;
end;
5.在query_find 数据库中,对 clear、find、new 分别添加when-button-pressed
在里面写入如下代码引用: QUERY_FIND.btn_new('WHEN-BUTTON-PRESSED');
clear里面写入app_find.clear;
6.在from级别自定义trigger,命名为query_find 写入如下代码,(查询目标快)
QUERY_FIND.query_find;
7.在query_find块中添加 KEY-NXTBLK 触发器:写入如下代码
query_find.btn_find; (代码与查询触发器的一样)
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27424626/viewspace-742069/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/27424626/viewspace-742069/