我正在尝试创建组 - 子组创建机制,在我的数据库中我有 GROUPS 表,其中包含三列
| ID | GROUP_NAME | PARENT_GROUP_ID |
如果该组不是任何其他组的子组,则parent_group_id为null。创建组时,我有两个输入,第一个是基于:GROUPS 数据块的组名称,基于 GROUPS 表,第二个应该是下拉列表,填充使用 GROUPS 表中的行,其中parent_group_id为null。为此,在为数据块创建布局时,我选择parent_group_id
的数据类型为char
,项目类型为List Item
。
在不选择父组的情况下创建组是可以的。但是没有填充列表,我在表单级别有一个when-new-form-instance触发器,它调用程序来填充列表
PROCEDURE CBS_WNFI_LIST IS
rg_groups RecordGroup;
rg_group_name VARCHAR2(5) := 'GROUP_NAME';
nDummy NUMBER;
BEGIN
rg_groups := Find_Group(rg_group_name);
-- Delete any existing Group first
IF NOT Id_Null(rg_groups) THEN
Delete_Group(rg_groups);
END IF;
-- Now create a Record Group using a SQL query
-- Your Query must have a Label and a Value (two Columns)
-- and the data types must match your item type
rg_groups := Create_Group_From_Query(rg_group_name,'SELECT group_name, to_char(ID) FROM GROUPS WHERE PARENT_GROUP_ID IS NULL');
-- Populate the Record Group
nDummy := Populate_Group(rg_groups);
-- Populate the List Item
Populate_List('PARENT_GROUP_ID',rg_groups);
END;
在new-form-instance上我收到错误 ORA06502 UNPROCESSED EXCEPTION
你能帮我找出我做错的地方吗?
答案 0 :(得分:0)
错误地指定rg_group_name的长度为5,而长度超过5个字符。