按钮按下按钮Oracle表单的顺序

时间:2019-04-16 05:28:37

标签: oracle oracle11g oracle10g oracleforms oracle-fusion-middleware

我在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;

enter image description here

现在我需要这些步骤当用户再次按下“上传”按钮时:

如果Upload Button = 1,例如“ Upload 1”那么

-从表格中删除

-重新上传(运行上传过程)

-将数据保存到表数据库中

-将“上传按钮”的标签更改为“上传[2]”

当上传按钮标签为“ Upload 1”时,我尝试了一下自己,然后运行第二步,但没有解决。请提供解决方案

谢谢

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;