Oracle FORMS BUILDER开发最全常用代码(3)

2019-04-21 15:12

1.10 NEW_FORM及OPEN_FORM

11 of 67

1.11 EXIT_FORM实现强制退出

1.12 确定Form是否成功

12 of 67

1.13 POST写入数据及刷新屏幕、同步状态

1.14 退出时判断表单状态或数据块状态

BEGIN IF :SYSTEM.BLOCK_STATUS IN(‘NEW’) THEN COMMIT_FORM; END IF; END;

RAISE FORM_TRIGGER_FAILURE;

--form trigger

--when_tab_page_changed

if :system.form_status in (\

set_canvas_property('画布名',topmost_tab_page,:system.tab_pervious_page); raise_application_error(-40401,没有修改需要保存.\raise_form_trigger_failure;

if :system.form_status not in (‘CHANGED’) then raise_form_trigger_failure;

END if;

13 of 67

1.15 通过表单状态可控制子Block的状态

1.16 判断当前表单状态

1.17 COMMIT时的判断

1. COMMIT_FORM和COMMIT

都对form和数据库进行提交。针对form上面的数据变动提交到后台数据库,同时数据库提交数据。

2. DO_KEY('COMMIT_FORM')

它会首先执行KEY-COMMIT触发器里面的代码,如果没有这个触发器,则会做COMMIT_FORM一样的操作。

3. FORMS_DLL('COMMIT')

只针对代码中insert、update、delete语句进行提交,form上面的数据不提交。 DG 里面提到:

Replace COMMIT with do_key('commit_form'), This routine raises the exception FORM_TRIGGER_FAILURE if there is an invalid record. COMMIT时触发器执行顺序: (1).KEY-COMMIT (2).PRE-COMMIT

(3).PRE/ON/POST DELETE (4).PRE/ON/POST UPDATE (5).PRE/ON/POST INSERT (6).ON-COMMIT

(7).Post DataBase Commit

4. QUIETCOMMIT

oracle form \悄悄\提交。如果使用commit_form的话会弹出信息提示\没有修改需要保存\或者\记录已保存\。如果你不想提示出现,则可以调用函数

app_form.quietcommit。由于是一个function, 所以需要定义一个变量用来接收返回值, 返回值类型为boolean,当true的时候就说明成功, 否则commit失败。

14 of 67

2. Block块

2.1 块的分类及查询更新插入控制

块分为数据块及控制块:控制块只需建立完数据块后,Database Datablock选‘NO’. 属性中可控制查询、更新、插入的允许及Where语句. 一个Form在一个画布上可以有多个块儿。。 2.2 块Block属性 (1)Subclass Information

2.3 通过登录账号设置BLOCK的可修改属性

Set_block_property(‘’,update_allowed,property_false);

DECLARE The_usernameVARCHAR2(30); BEGIN The_username :=Get_Application_property(USERNAME); END;

15 of 67


Oracle FORMS BUILDER开发最全常用代码(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:河北美术出版社二年级下册书法教案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: