本文档详细描述了 使用Hand PLSQL 代码自动生成器生成一些常用代码的方法。
在 PLSQL developer中 使用 test 功能 (将DBMS输出的缓冲区大小设置为1000000,太小了可能出错 @yunfang.shang 注)
分别运行以下函数或过程,可以在 DBMS输出窗口 中得到自动生成的代码。
程序包:HAND_PLSQL_AUTOCREATE
过程regist_table
用于产生表注册到应用的脚本。比如我们我们的Form要支持描述性弹性域,则必须把BLOCK的数据源表注册。
参数名 | 描述 |
|
|
P_TABLE_NAME | 要注册的表名 |
P_OWNER | 表的拥有者 |
P_APPL_SHORT_NAME | 应用简名 |
过程form_view_iud
用于产生form操作表的程序单元<BLOCK_NAME> + ‘_PRIVATE’;
可以产生Insert_row;update_row;delete_row; lock_row ; 用于Form 中 Block上最常用的增,删,改触发器:ON-INSERT;ON-UPDATE;ON-DELETE; ON-LOCK
适用于表没有TABLE API的情况。
参数名 | 描述 |
|
|
P_BLOCK_NAME | FORM的块名 |
P_TABLE_NAME | 要维护的表名 |
P_OWNER | 表的拥有者 |
P_PRIMARY_KEY | 表的主键字段 |
过程table_handle_pkg
用于产生form操作表的程序包<TABLE_NAME>_PKG
建议为每个业务表产生TABLEAPI。
参数名 | 描述 |
|
|
P_TABLE_NAME | 要产生TABLE API的表名 |
P_OWNER | 表的拥有者 |
P_PRIMARY_KEY | 表的主键字段 |
过程form_table_handle
用于产生form操作表的程序单元<BLOCK_NAME> + ‘_PRIVATE’;
可以产生Insert_row;update_row;delete_row; lock_row ; 用于Form 中 Block上最常用的增,删,改触发器:ON-INSERT;ON-UPDATE;ON-DELETE; ON-LOCK
只不过,跟form_view_iud 相比,它利用了table_handle_pkg 产生的Table API 来完成增,删,改。所以如果要利用这个过程来产生Insert_row;update_row;delete_row; lock_row ; 则必须先使用table_handle_pkg 产生Table api
参数名 | 描述 |
|
|
P_BLOCK_NAME | FORM的块名 |
P_PACKAGE_NAME | TABLE API的程序包名 |
P_TABLE_NAME | 要维护的表名 |
P_PRIMARY_KEY | 表的主键字段 |
(适用于表具有TABLEAPI的情况。必须先产生TABLE API的程序包,然后才能产生FORM的程序单元。)