自动生成连续编号
痛点:1、本地版自动编号,如果不勾选保存后生成的话,新建打开关闭后,再新建的表单编号会自动增加,不连续;2、勾选保存后生成的话不能直观看见表单编号,要保存后才能看见;
3、云端版本自动生成的编号不连续。
启发:由论坛分享获得启发:分享:同一日期中的多个记录需要顺序号的方法-云表数字化管理社区 - Powered by Discuz! (iyunbiao.com)
先看效果:选择不同的表单类别:出货或者退货后,表单编号发生变化。
当天有表单时序号+1
当天无表单时从01号开始
设置数据接口:表单编号最大值
设置填表公式:值变化——表单类别值变化(根据自身表单设置)
注意:值变化需要值发生变化才会执行公式,所以在模板中先设置好默认值。然后再用填表公式新建打开表单后赋值一个新值。
赋值公式:
IF( 日期( 文本转数值(取子串(数据源.表单编号,3,4)) , 文本转数值(取子串(数据源.表单编号,7,2)) , 文本转数值(取子串(数据源.表单编号,9,2)) ) = 系统变量.当前日期 , 取左子串( 数据源.表单编号 ,10 )+ IF(取右子串(数据源.表单编号,2) >=9 , 数值转文本(文本转数值( 取右子串(数据源.表单编号,2 ) )+ 1),"0" +数值转文本(文本转数值( 取右子串(数据源.表单编号,2 ) )+ 1)), 汉字首字母(数据源.表单类别,true) + 年份值( 系统变量.当前日期 )+ IF(月份值( 系统变量.当前日期 ) >= 10,月份值( 系统变量.当前日期 ), "0"+ 月份值( 系统变量.当前日期 )) + IF(日期值( 系统变量.当前日期 ) >= 10,日期值( 系统变量.当前日期 ), "0"+ 日期值( 系统变量.当前日期 )) +"01" )
特别提示:在执行条件中添加“明细数据=常量.空”时,才执行公式,这样表单中有数据并且保存后,再打开这个公式就不执行了。
分段理解:
IF
(
日期( 文本转数值(取子串(数据源.表单编号,3,4)) , 文本转数值(取子串(数据源.表单编号,7,2)) , 文本转数值(取子串(数据源.表单编号,9,2)) ) = 系统变量.当前日期 ,
取左子串( 数据源.表单编号 ,10 )+ IF(取右子串(数据源.表单编号,2) >=9 , 数值转文本(文本转数值( 取右子串(数据源.表单编号,2 ) )+ 1),"0" +数值转文本(文本转数值( 取右子串(数据源.表单编号,2 ) )+ 1)),
汉字首字母(数据源.表单类别,true) + 年份值( 系统变量.当前日期 )+ IF(月份值( 系统变量.当前日期 ) >= 10,月份值( 系统变量.当前日期 ), "0"+ 月份值( 系统变量.当前日期 )) + IF(日期值( 系统变量.当前日期 ) >= 10,日期值( 系统变量.当前日期 ), "0"+ 日期值( 系统变量.当前日期 )) +"01"
) 点赞 赞
页:
[1]