行式填报之流水号设置
当多用户并发填报时,有时会遇到主键重复的问题,造成数据丢失的情况。通过在报表中添加流水号设置则可轻松解决该问题。
使用向导用自带的员工表自动生成行式填报。
文件–新建行式填报–数据表选择员工表–勾选编号字段为主键字段,点击确定即可。
生成填报表之后,修改样式如下图所示:
其中姓名 D3 单元格添加了下拉列表框的编辑风格,给性别的数值做对应的男、女转换。
出生日期 F3 以及入职日期 G3 设置了编辑风格为下拉日历。
应发工资 J3 设置为自动计算,=I3*1.2
发布展示效果为:
问:现在增加数值时,编号字段是需要自己填写的,那么我们如何设置主键自增呢?
下面来一起看一下。
方式一:序号格
只需选中 B3 单元格,勾选右侧属性【类型】–【序号格】即可。
这种方式,采用全数据查询的方式,当插入行或追加行的时候,序号都会自动调整。
效果图下:
方式二:UUID,js 自定义
1、在展示报表的 jsp 添加 js,自动生成由数字,字母组成的 16 位随机字符串做主键。
如下代码:
function newUUID()
{
var uuid = "";
for (var i = 1; i <= 16; i++){
var n = Math.floor(Math.random()*16.0).toString(16);
uuid += n;
}
var len = uuid.length;
return uuid;
}
2、在 B3 单元格右侧【缺省表达式】调用对应的 js 方法 newUUID()
注意:不要勾选序号格。
3、保存发布之后效果如下:
插入和增加数据时,编号都会随机自动生成 16 位数字 + 字母的字符串。
拓展:
追加数据时,如有日期,想默认显示为当前日期。设置方式为:对应单元格设置缺省表达式:(new Date()).format(“yyyy-MM-dd”) 即可。