如何在 Button SET_ITEM_PROPERTY 上自动增加数字
How to automatic increment in number on Button SET_ITEM_PROPERTY
我在 Oracle Forms 上有一个名为 "UPLOAD" 的按钮。当按下 "UPLOAD" 按钮时,2 个进程将 运行.
进程 1:
-- 将数据从 Excel 文件上传到 Oracle 表单中
-- 将数据从 Oracle Forms 保存到数据库 Table
-- 显示数据块上的重复记录
-- 按钮标签将随 UPLOAD[1]
改变
如果再次按下 "UPLOAD" 按钮,则处理 2 将 运行
进程 2:
-- 将数据从 Excel 文件上传到 Oracle 表单中
-- 将数据从 Oracle Forms 保存到数据库 Table
-- 按钮标签将随上传[2]
改变
现在我想要当再次按下 "UPLOAD" 按钮时,数字会自动递增。比如UPLOAD[3]等等。
"UPLOAD" 按钮代码:
IF ( :WE_GROUP.FILE IS NOT NULL ) AND :WE_GROUP.DISPLAY IS NOT NULL THEN
EXCEL_UPLOAD;
commit;
Set_Item_Property('Upload',label,'Upload'||' ['||2||']');
:WE_GROUP.FILE := NULL;
ELSIF ( :WE_GROUP.FILE IS NOT NULL ) AND :WE_GROUP.DISPLAY IS NULL THEN
EXCEL_UPLOAD;
commit;
Set_Item_Property('Upload',label,'Upload'||' ['||1||']');
:WE_GROUP.DISPLAY := 1;
:WE_GROUP.FILE := NULL;
go_block('we_group_hof_k');
CLEAR_BLOCK(NO_VALIDATE);
go_block('we_group_hof_k');
first_record;
for c in
(
SELECT cnicno, hofid
FROM hof
WHERE cnicno IN (SELECT cnic_no FROM we_group_hof_k)
)
loop
:we_group_hof_k.CNIC_NO := c.cnicno;
:we_group_hof_k.GROUP_HOF_ID := c.hofid;
next_record;
end loop;
ELSE
Message('No File selected.');
message(' ');
RAISE Form_Trigger_Failure;
END IF;
只需声明一个局部整型变量为
declare
v_label pls_integer
begin
并分配一个从上传按钮上看到的整数值开始递增的值
v_label := regexp_replace(Get_Item_Property('Upload',label),'(\D)')+1
然后替换
Set_Item_Property('Upload',label,'Upload'||' ['||2||']');
和
Set_Item_Property('Upload',label,'Upload ['||v_label||']');
我在 Oracle Forms 上有一个名为 "UPLOAD" 的按钮。当按下 "UPLOAD" 按钮时,2 个进程将 运行.
进程 1:
-- 将数据从 Excel 文件上传到 Oracle 表单中
-- 将数据从 Oracle Forms 保存到数据库 Table
-- 显示数据块上的重复记录
-- 按钮标签将随 UPLOAD[1]
改变如果再次按下 "UPLOAD" 按钮,则处理 2 将 运行
进程 2:
-- 将数据从 Excel 文件上传到 Oracle 表单中
-- 将数据从 Oracle Forms 保存到数据库 Table
-- 按钮标签将随上传[2]
改变现在我想要当再次按下 "UPLOAD" 按钮时,数字会自动递增。比如UPLOAD[3]等等。
"UPLOAD" 按钮代码:
IF ( :WE_GROUP.FILE IS NOT NULL ) AND :WE_GROUP.DISPLAY IS NOT NULL THEN
EXCEL_UPLOAD;
commit;
Set_Item_Property('Upload',label,'Upload'||' ['||2||']');
:WE_GROUP.FILE := NULL;
ELSIF ( :WE_GROUP.FILE IS NOT NULL ) AND :WE_GROUP.DISPLAY IS NULL THEN
EXCEL_UPLOAD;
commit;
Set_Item_Property('Upload',label,'Upload'||' ['||1||']');
:WE_GROUP.DISPLAY := 1;
:WE_GROUP.FILE := NULL;
go_block('we_group_hof_k');
CLEAR_BLOCK(NO_VALIDATE);
go_block('we_group_hof_k');
first_record;
for c in
(
SELECT cnicno, hofid
FROM hof
WHERE cnicno IN (SELECT cnic_no FROM we_group_hof_k)
)
loop
:we_group_hof_k.CNIC_NO := c.cnicno;
:we_group_hof_k.GROUP_HOF_ID := c.hofid;
next_record;
end loop;
ELSE
Message('No File selected.');
message(' ');
RAISE Form_Trigger_Failure;
END IF;
只需声明一个局部整型变量为
declare
v_label pls_integer
begin
并分配一个从上传按钮上看到的整数值开始递增的值
v_label := regexp_replace(Get_Item_Property('Upload',label),'(\D)')+1
然后替换
Set_Item_Property('Upload',label,'Upload'||' ['||2||']');
和
Set_Item_Property('Upload',label,'Upload ['||v_label||']');