我在Oracle Forms上有一个“ UPLOAD”按钮,当用户按下该按钮时:
如果“文本项”字段不为空,则
-从“ CSV”文件运行上传过程到Oracle Forms
-将数据从Oracle表单保存到数据库表中
-通过SQL查询在Excel文件中运行报告
-将“上传按钮”的标签更改为“上传1”
这些步骤成功运行。代码:
IF ( :WE_GROUP_HOF_K.FILE IS NOT NULL ) THEN
EXCEL_UPLOAD;
commit;
REPORT_EXCEL;
Set_Item_Property('Upload',label,'Upload [1]');
END IF;
现在我需要这些步骤当用户再次按下“上传”按钮时:
如果Upload Button = 1,例如“ Upload 1”那么
-从表格中删除
-重新上传(运行上传过程)
-将数据保存到表数据库中
-将“上传按钮”的标签更改为“上传[2]”
当上传按钮标签为“ Upload 1”时,我尝试了一下自己,然后运行第二步,但没有解决。请提供解决方案
谢谢
答案 0 :(得分:1)
您可以考虑使用Get_Item_Property
方法为numeric part
提取if statement
为
declare
v_label varchar2(100);
begin
if ( :we_group_hof_k.file is not null ) then
begin
v_label := Get_Item_Property('Upload',label);
if regexp_replace(v_label,'(\D)') = '1' then
Delete from table ...
EXCEL_UPLOAD;
Save data into table database ...
Set_Item_Property('Upload',label,'Upload [2]');
else
EXCEL_UPLOAD;
REPORT_EXCEL;
Set_Item_Property('Upload',label,'Upload [1]');
end if;
commit;
end;
end if;
end;