制作一个行式填报表

接上例,我们把一个网格式填报表快速改成行式填报表

第一步:设计填报表

打开填报表文件1.1.sht,修改A3为数值格,并且删除A3的表达式,此时主键列也可以通过页面填写。在数值格下边一行增加一行数值格,另存为2.1.sht。如下图:

数据处理、编辑风格、校验、自动计算和显示格式沿用2.1.sht不做修改。数据处理中程序会自动根据填报后的数据和数据库中的数据依次对比进行deleteinsertupdate操作,来更新数据库中的数据。

第二步:设置单元格属性

(1)  是否可编辑表达式

在填报表中可以通过单元格属性“是否可编辑表达式”控制某一个单元格是否可编辑,如选中B3单元格,在属性列表“是否可编辑表达式”中输入

WEB预览(参见WEB预览)如果部门列为研发部,则部门列不可编辑。在填报表编辑过程中,当部门列可编辑格格值改为“研发部”时,当前格变为不可编辑。

(2)  是否可视表达式

在填报表也可以通过单元格属性“是否可视表达式”设置某一个单元格是否可视,如选中I3单元格,在属性列表 “是否可视表达式”中输入

WEB预览(参见WEB预览)应发工资列只显示小于10000的数据,如编号为23的应发工资大于10000了,则不可视。工资列格值发生变化时,经计算后的应发工资大于等于10000时,同行应发工资不可视,经计算后的应发工资小于10000时,同行应发工资变为可视。

(3)  缺省值表达式

还可以通过设置“缺省值表达式”为行式填报表在插入或者添加行时给单元格设置一个缺省值,简化填报工作量同时避免输入错误值。如选中F3单元格,在属性列表 “缺省值表达式”中输入

WEB预览(参见WEB预览)在增加行和插入行时,入职日期自动填写当前日期作为缺省值。

具体属性说明可参考《润乾报表V2018用户参考》。

注意:行式填报表的编辑风格、校验等应该在第一行数值格设置,在第二行设置无效。

第三步:WEB预览

WEB预览步骤参考WEB预览章节,效果如下图所示:

可通过按钮添加一行数据,通过按钮插入一行数据,通过按钮删除一行数据。数值格对应字段值全空的记录不生成。

 

●序号格

行式填报表中还可以使用单元格属性栏中的序号格为填报表增加一列,列值等于行序号,行序号自动生成,数据行有增删时序号值会动态改变,序号格作为数值格处理,但是不可填写。填报提交的结果会自动拼上序号格列。

例如:3.1.sht中,选中A3后勾选属性栏中的序号格,如下图:

WEB发布后,在增加行和插入行时,系统会重新调整编号列的值。

回填时编号列作为主键回填到数据库中。

实际应用中如果一张表的主键是从1开始连续的数字,并且此主键不是其他表的外键字段,则可以把此字段设置为序号格,这样就不用手动添加主键值,避免手动填写的主键值有重复或不连续。

●固定表头

行式填报表还可以固定表头,上表头不需要用户指定,程序默认采用行式行的上一行作为上表头,如果上一行中有合并格,那么合并格所跨过的行也算上表头。目前仅支持固定上表头。例如2.1.shtA2所在行为固定表头。