Skip to content

进阶专题:「手动编号」

1:应用场景说明

系统自带的自动编号控件,仅包含一个自增位数,无法满足部分精细化业务需求,实际业务中常见两类场景:

1、物料清单按所属分类缩写独立规则编码,不同分类单独序列计数;

2、清单记录删除后产生编号空缺,后续新增同分类数据时自动填补空缺号码。

此类场景可通过工作流实现自定义手动编号。

注意

可点击链接获取实操示例应用:手动编号Demo

特别说明

系统支持回收站功能,手动删除表单数据六个月内可恢复;使用工作流手动编号并包含自动填补空缺号码逻辑,会与数据回收站机制产生冲突。

2:表单搭建

2.1.物料分类表单

新增物料分类,添加以下控件,并各自设置唯一字段规则

  • 物料分类名称: 文本控件,必填;
  • 物料分类缩写: 文本控件,必填;

2.2.物料清单表单

新增物料清单表单,添加以下控件:

  • 自动编号: 自动编号控件,新增时隐藏;
  • 手动编号: 文本控件,新增时隐藏,编辑时不可编辑;
  • 手动编号-前缀缩写: 文本控件,新增时隐藏,编辑时隐藏;
  • 手动编号-后缀数值: 数值控件,新增时隐藏,编辑时隐藏;
  • 物料分类: 关联字段控件,必填;关联物料分类表单,物料分类名称字段,启用关联填充,将物料分类缩写,填充至手动编号-前缀缩写
  • 物料分类缩写: 文本控件,必填;
  • 物料分类名称: 文本控件,必填;

2.3.补位编号记录表单

新增补位编号记录表单,添加以下控件:

  • 表单名称: 文本控件;
  • 分类缩写: 文本控件;
  • 缺省数值: 数值控件;
  • 是否已被使用: 是否控件;

3:工作流搭建

3.1.新增物料清单后更新手动编号

通过流程参数控件,设置文本类型的编号前缀缩写数值类型的编号后缀数值,便于不同取值逻辑更新及后续使用。

3.1.1.处理编号前缀缩写

设置分支节点,分支条件分别判断流程触发节点手动编号-前缀缩写是否为空,

  • 字段为空状态下,通过流程触发节点的物料分类数据,使用查询记录节点查询物料分类表中中对应的物料分类缩写,作为流程参数编号前缀缩写
  • 字段非空状态下,直接取用流程触发节点的手动编号-前缀缩写,作为流程参数编号前缀缩写

3.1.2.核算编号后缀数值

优先检索补位编号记录,使用查询补位编号记录表单,匹配对应分类缩写的缺省数值。

若查询到匹配的补位编号记录,本次编号后缀数值需要按补位处理,直接取查询到的缺省数值

若补位编号记录的查询结果为空,则查询物料清单中同物料分类的数据,提取现有最大后缀数值,自增 1 后作为编号后缀数值

提示

注意查询记录节点设置了排序规则,保证取到的值为所需的最大值最小值

3.1.3.拼接编号并回写表单

使用公式计算节点拼接前缀与后缀,生成完整手动编号,同步更新至物料清单对应字段。

注意

批量导入数据场景下,需开启同步队列,串行执行编号取值逻辑,避免并发新增出现编号重复问题。

参考说明:同步队列

3.2.删除物料清单后新增补位编号记录

物料清单数据删除后,自动触发流程,提取该条数据原编号分类缩写与后缀数值,新建一条空缺补位记录存档,供后续新增数据补号使用。