低代码学习教程:自动连续编号的实现

1、并发产生的原因

并发的概念: 当同一时间出现多人打开一个页面,录入数据时,那么此时就出现并发现象了。而表单里如果使用了MAPX函数来自动生成数据时,就会出现多人生成相同数据,那么提交的数据就会出现重复的!如果这个重复的字段又设置了唯一性,那么除了第一个人提交成功之外,其他人提交都将失败,这个就是并发导致的问题。
自动连续编号的并发问题: 在实现自动生成编号时,为了使得编号连续,我们使用了MAPX来实现的,此函数并不能解决并发的问题,如果出现并发,第一个用户提交成功之后,那么后提交的用户,因为编号的唯一性,将导致提交失败。而如果想继续提交,必须刷新页面重新生成编号才能提交,但是页面数据得重新录入一次!这样就加大了用户的操作,因此需要解决这个问题。

2、自动连续编号的实现

  1. 添加一个单行文本控件,标题修改为“流水单”,属性里【效验】设置:勾选 不允许重复值选项,属性【默认值】选择公式编辑,公式设置为:
  2. CONCATENATE("BBY-",TEXT(TODAY(),"yyyyMMdd"),"-",RIGHT("000000"+序号,6))
  3. 添加一个单行文本控件,标题修改为“月份”,属性里【操作权限】设置:取消勾选 可见、可编辑 选项,属性【默认值】选择公式编辑,公式设置为:
  4. TEXT(TODAY(),"yyyyMM")
  5. 添加一个数字控件,标题修改为“序号”,属性里【操作权限】设置:取消勾选 可见、可编辑 选项,属性【默认值】选择公式编辑,公式设置为:
  6. MAPX("max",月份,月份,序号)+1

以上的自动连续编号功能就已经实现了,但是这个实现由于使用了MAPX函数,因此就存在并发的问题。那么下面我们就来解决并发问题。

3、并发的解决方案

  1. 在页面里增加一个单选按钮组控件,保留第一个选项,选项内容为:刷新。
  2. 修改序号的公式,使得每次点击【刷新】按钮时,都能重新生成编号。公式为:
  3. IF(刷新流水单号=="刷新",MAPX("max",月份,月份,序号)+1,MAPX("max",月份,月份,序号)+1)

效果展示:

如此,当出现重复值不能提交时,就可以点击刷新按钮,生成一个新的编号,这样就可以继续提交了,而不需要刷新页面,重新录入页面数据。

 想要了解更多内容,欢迎前往百数官网免费体验:https://www.baishuyun.com/

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值