如何用存储过程更新填报表数据
在润乾报表中提供了多种填报表表更新方式,包括:更新数据库表、用存储过程更新、用自定义类更新和更新语义表视图。这其中最常用的就是更新数据库表和用存储过程更新。下面我们来介绍一下如何用存储过程更新填报表数据。
首先,我们来编写一个存储过程来更新数据库中的某张表:
create or replace procedure update_test_test(a1 in number, a2 in varchar2) is
begin
update test_test t set t.test_num=a1 where t.test_id=a2 ;
end update_test_test;
其中,a1和a2是两个入参,也是填报表的更新数据作为入参传递到存储过程中来进行更新。
然后,我们设计一下报表:
更新属性的设置:
在参数的位置我们使用了=inputValue()函数,这个函数的意思是:取得表达式的填报值。如果直接写单元格名,表示是取单元格填报前的原始值。
在调用存储过程的位置要用call函数来调用存储过程:{call update_test_test(?,?)}。问号的顺序与参数一一对应。
我们在页面上测试一下:
更新前:
更新时:
更新后:
查看数据库,数据已经更新到数据库中了。
需要注意的是,用存储过程方式更新目前只适用于普通填报表,不适用于行式填报表。