自动编流水号怎么实现

做填报 填报的报表表头有个记录编号  用于做唯一的主键 编号的样式像这样2019100001 前面6位为年月  后面4位为流水号  效果要达到这样: 比如我现在填报了一张流水号为2019100001的记录 提交后要填下一张的时候  流水号就自动变为2019100002 以此类推   跨月到11月份的时候就 自动又从2019110001开始编

FineReport wd210010 发布于 2019-10-10 09:11
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
孤陌Lv6资深互助
发布于2019-10-10 09:25

"RK" + FORMAT(TODAY(),"yyyyMM")+FORMAT(ds1.select(rkxh) + 1, "0000")  这样就好了 

DS1数据集自己写SQL查询出你数据库当前月 最大的ID号

  • 简单发髻 简单发髻 那怎样实现跨越月份自动归零啊?
    2021-06-08 16:50 
最佳回答
0
firegunzxLv6高级互助
发布于2019-10-10 09:15(编辑于 2019-10-10 09:18)

可以用公式自动生成流水号

首先用sql查出目前数据表里当前月份最大的ID,存放在A1

在A2单元格里输入公式:

if(len(A1)==0,format(today(), "yyyyMM")+"0001",left(A1,6)+right(CONCATENATE("000", TOINTEGER(right(A1,4))+1), 4))

  • wd210010 wd210010(提问者) 我要我这个固定格式的流水号
    2019-10-10 09:15 
  • firegunzx firegunzx 回复 wd210010(提问者) 公式改成你的格式了
    2019-10-10 09:19 
  • wd210010 wd210010(提问者) 回复 firegunzx 用你的不行 用下面的方法达到效果了
    2019-10-10 09:49 
  • 用户S0903573 用户S0903573 如果是excel 导入数据的时候 就不可以 大佬 有没有什么别的方法实现
    2021-03-17 10:19 
  • 烟尘 烟尘 回复 用户S0903573 导入的建议用自定义提交,通过java来编号
    2021-03-17 10:42 
最佳回答
0
JBadminLv3初级互助
发布于2019-10-10 09:15

1、在数据库表上写一个触发器最好实现 ;

最佳回答
0
ole9975431Lv6见习互助
发布于2020-10-29 14:52

序列==》触发器==》存储过程重置序列==》定时任务执行存储过程。

  • 5关注人数
  • 1491浏览人数
  • 最后回答于:2020-10-29 14:52
    请选择关闭问题的原因
    确定 取消
    返回顶部