如何通过脚本实现数据动态更新

  • 时间:
  • 浏览:0
  • 来源:uu快3计划_uu快3官方_单双

进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

版权声明:本文内容由互联网用户自发贡献,版权归作者所有,本社区不拥有所有权,好多好多 承担相关法律责任。因为您发现本社区含有涉嫌抄袭的内容,欢迎发送邮件至:

在数据填报的场景中,常常会遇到根据条件动态更新数据的需求,累似 :在条件 A 下将页面所有数据插入到数据库表中,而在条件 B 下则将页面中做了修改的数据更新到数据库表中。 遇到这名 需求,脑海中的第另有一个 多想法好多好多 :存储过程更新、因为 java 代码更新。不过,这并是否是实现措施的工作量和后期维护却虽然让他头疼不已。这样,还有这名 什么实现措施吗?但会 最好是能和报表完美整合到一同的那种…. 另另有一个 的美事儿,还真有!润乾报表提供了脚本模式的填报表制作措施,通过脚本,都可不都可否 实现你各种天马行空想法。具体为社 操作呢?且听我慢慢道来。 下面大伙儿 以动态更新 demo 库中雇员表数据为例,当 type 参数的值为 1 时,将页面中 employee 表的所有数据更新入库;但会 只将做了修改的 employee 记录更新入库。操作步骤如下: 第一步  制作行式填报 大伙儿 先使用行式填报制作向导制作另有一个 多简单的行式填报表,如下图所示: 【小技巧】 因为对整理规则熟透悉,这样都可不都可否 对第二行每个单元格设置字段名称:对象. 字段 第二步  定义参数 在填报–参数配置页面中新增还要的参数,本文还要定义 type 参数作为数据更新补救措施判断措施,如下图所示: 第三步  修改脚本,实现动态更新数据补救 来源脚本为默认生成的脚本: 其中, B2 的得话:>EMPLOYEE=A1.query(“SELECT EID,NAME,SURNAME,BIRTHDAY,HIREDATE from EMPLOYEE”)   从 demo 库中查询 employee 表的数据,并将结果写到 employee 对象中 去向脚本修改为如下图所示的内容: 动态更新数据时,还要用到 if 函数来动态判断,这里着重讲解下 if 的相关配置: A2:if type==1  // 判断是是是否是是满足 type 参数值是 1 的条件 B3:>A1.update@ik(EMPLOYEE, 雇员, 雇员 ID:EID, 姓氏:NAME, 名字:SURNAME, 出生日期:BIRTHDAY, 雇用日期:HIREDATE ; 雇员 ID)  // 当满足 if 条件时,将 EMPLOYEE 对象中的数据完整篇 插入到雇员表中,update@i 表示只执行插入更新操作 A4:else  // 不满足条件,type 参数值全是 1 B5:>A1.update@k(EMPLOYEE:EMPLOYEE_old, 雇员, 雇员 ID:EID, 姓氏:NAME, 名字:SURNAME, 出生日期:BIRTHDAY, 雇用日期:HIREDATE; 雇员 ID) // 当不满足 if 条件时,将页面中 EMPLOYEE 对象修改了的数据更新到数据库中,当 update 后无这名 选项时,表示执行智能更新 【小技巧】 在不选用怎样才能补救数据因为检查计算结果时,大伙儿 都可不都可否 使用 debug()因为 output() 函数输出还要检查的信息,通过观察控制台结果来调试和判断。 【延伸】 累似 场景: 1)type 参数是是是否是是为 1 好多好多 大伙儿 假设的另有一个 多条件,实际的条件因为更加灵活和多样化。累似 动态更新数据的判断措施因为是某个结果集是是是否是是为空,大伙儿 就都可不都可否 使用 T.len() 获取结果集的长度,当长度为 0 时,表示结果集为空。 2)假设示例中的需求修改为:当 type 的值全是 1 时,将雇员表和 EMPLOYEE 对象的数据作比较,但会 将差异数据更新入库。而雇员表数据在 guyuan 对象中,这样此时都可不都可否 将 update 的写法改为: A1.update@k(EMPLOYEE:guyuan, 雇员, 雇员 ID:EID, 姓氏:NAME, 名字:SURNAME, 出生日期:BIRTHDAY, 雇用日期:HIREDATE; 雇员 ID) 至此,大伙儿 就实现了在脚本模式下制作填报表,进而动态更新数据的效果。这里还要重点理解的是 if 和 update 函数的使用,不过显然也是比较简单的哦 ~ 当大伙儿 遇到还要用脚本进行数据补救的状态,并不害怕,盘它就对了,盘的多了,让他发现另另有一个 脚本真的是很有意思的并是否是补救措施。 更多填报表制作技巧在这里:http://c.raqsoft.com.cn/tag/Report?t= 填报技巧