润乾 V2018 行式填报控制只新增数据能修改主键

 

润乾 V2018 行式填报表支持即能从数据库中查询出部分数据进行修改,又能在页面上动态插入行实现数据的新增,在实际应用中,客户系统的主键字段要求比较严格,要求查询出来的数据主键不能修改,新增时主键字段通过页面录入。

实现思路:

润乾填报支持通过表达式动态控制单元格是否可编辑,这样就可以通过判断主键所在单元格的数据是否在系统中已存在,如果存在证明是查询出的数据,设置该单元格不可编辑即可。在取数表达式中新增一个对象,用于存储主键字段:

对象 a 中存储的就是报表展现出的编号

然后在报表的 A1 单元格中取出该对象的值:

在 A3 单元格的是否可编辑表达式中写入:A3.toString()=="" ? true : A1.indexOf(A3)<0

实际应用中发现,A3 扩展出来的单元格都无法编辑,导致选中其他单元格插入行后,新增的编号所在单元格也无法编辑,所以要在取数表达式中做个控制,如 E2 单元格,里边对 yuangong 对象插入了一个空行,并且在是否可便捷表达式中增加了 A3.toString()=="" 的判断,这样,就能控制原来查询出来的单元格无法编辑,但下方会有一个空行用于录入数据或者插入行。
更多填报类问题请看:填报分类导航
* 固定格式填报表的制作
* 分组填报表的制作
* 脚本中如何做填报数据校验
* 填报表之数据留痕
* 行式填报之主键设置