Oracle Form开发 启用弹性域
弹性域
弹性域分成键弹性域、说明性弹性域。这两种弹性域用途是不一样的。
关键性弹性域:在使用KEY 弹性域的基表中,只保存ID。但可以通ID 查询到相应的SEGMENT。在表结
构中表现为***_ID、SEGMENT1 等。
说明性弹性域:针对特定用户扩展输入特定信息的字段。在表结构中表现为attribute_category、attribute1
字段等。
注册弹性域
注册弹性域列
操作路径:应用开发员=>弹性域=>说明性=>注册
点列按钮,选择注册相应的列
注册弹性域段
操作路径:应用开发员=>弹性域=>说明性=>段
点段按钮,输入提示文本
——————————————————————————————————————
启用说明性弹性域
1.1 先按将相应的FORM 开发好,然后在FORM 级的以下TRIGGER 中加入
PRE-QUERY: FND_FLEX.EVENT('PRE-QUERY');
POST-QUERY: FND_FLEX.EVENT('POST-QUERY');
PRE-INSERT: FND_FLEX.EVENT('PRE-INSERT');
PRE-UPDATE : FND_FLEX.EVENT('PRE-UPDATE');
WHEN-VALIDATE-ITEM: FND_FLEX.EVENT('WHEN-VALIDATE-ITEM');
WHEN-VALIDATE-RECORD: FND_FLEX.EVENT('WHEN-VALIDATE-RECORD');
1.2 在WHEN-NEW-FORM-INSTANCE 的TRIGGER 中加
fnd_descr_flex.define(BLOCK => 'B_LINE',
field => 'DESC_FLEX',
appl_short_name => 'CUX',
desc_flex_name => 'CUX_TEST'
);
说明一下相应参数:BLOCK:指启用弹性域的数据块名
FIELD:指后面新增的ITEM
APPL_SHORT_NAME:指相应模块的简称(系统管理员->应用->注册)
DESC_FLEX_NAME:指注册弹性域时的名称
2.在要启用弹性域的数据块中增加一个ITEM。名称为:DESC_FLEX。
2.1 DESC_FLEX 属性设置如下:
子类信息:TEXT_ITEM_DESC_FLEX
数据库项:否
画布:MAIN_C
2.2 在DESC_FLEX 项的以下trigger 中加入:
WHEN-VALIDATE-ITEM :FND_FLEX.EVENT('WHEN-VALIDATE-ITEM');
WHEN-NEW-ITEM-INSTANCE:FND_FLEX.EVENT('WHEN-NEW-ITEM-INSTANCE');
-- 刘轶鹤