请问如何在填报提交前校验这个\"报告编号\"的查询sql是否为最新,永远入库最新的\"报告编号\"?

Snipaste_2021-11-29_08-32-33.png

业务对编号的组成要求是字母+日期+序号(序号每天从001开始),如ZZ211128003,zz211129001

1、请问如何在填报提交前校验这个"报告编号"的查询sql是否为最新,永远入库最新的"报告编号"?——因为可能有别人先于提交了,便占用了这个编号

2、并且:假如校验数据库中已有此编号,编号自动更新,不用刷新整个界面去重新填报其他单元格?

FineReport 牛气冲天的哇 发布于 2021-11-29 08:35 (编辑于 2021-11-29 08:43)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
孤陌Lv6资深互助
发布于2021-11-29 08:37

填报属性里的内置检验 写SQL公式 查询数据库是不是存在这个编号就可以了

  • 牛气冲天的哇 牛气冲天的哇(提问者) 谢谢您!请问有没有能校验后直接更新这句查询,并入库最新的编号呢?内置校验后不可提交成功但需刷新整个页面重新填报?
    2021-11-29 08:45 
  • 孤陌 孤陌 回复 牛气冲天的哇(提问者) 更新查询 是不可能的个人建议在WEB 校验后 写JS更新 单元格的编号
    2021-11-29 08:51 
  • 牛气冲天的哇 牛气冲天的哇(提问者) 回复 孤陌 谢谢您啦!欧。。。。在您的思路上,改成了在填报属性的提交内置sql里,提交的“值”用公式:sql(查询最新报告编号),这样只要多人填报提交的时间是一前一后,就能保证编号唯一了。 假如真那么巧在同一秒那应该很少发生了吧....哈哈哈
    2021-11-29 09:50 
最佳回答
0
luojian0323Lv7资深互助
发布于2021-11-29 08:38

所以编号设置时要加上唯一识别的代码,比如登录用户姓名的拼音首字母+数字

这样同一个人,编号永远不可能重复,即便有音同的,还可以对编码后面加上1-3位长度的随机数字。以确保编码不重复。

最佳回答
0
Z4u3z1Lv6专家互助
发布于2021-11-29 08:59

用触发器

在数据插入数据库后,触发触发器生成报告编号,然后根据插入的项目编号重新加载一下项目信息

  • 3关注人数
  • 273浏览人数
  • 最后回答于:2021-11-29 08:59
    请选择关闭问题的原因
    确定 取消
    返回顶部