Skip to content

Commit

Permalink
Update metadata-field-type.mdx
Browse files Browse the repository at this point in the history
  • Loading branch information
yinlianghui committed Apr 10, 2022
1 parent 5e7e52c commit 5b8915e
Showing 1 changed file with 23 additions and 2 deletions.
25 changes: 23 additions & 2 deletions src/pages/docs/metadata-field-type.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -406,8 +406,6 @@ IM-payment-20211208008
新建一条记录时,编号从1开始记录。如果输入的是100,表示从101开始记录。而且当前编号值会随着新增记录的增加而改变,比如已经有10条记录了,当前编号值会显示为10。
![](https://console.steedos.cn/api/files/images/fNxfEb4R8pQz99osX)
#### 修改自动编号值
通常来说自动编号字段值是完全根据配置的编号规则自动计算出来的,也就是说它是不可以被用户在界面上编辑的。
Expand All @@ -431,6 +429,29 @@ IM-payment-20211208008
- 序号类型的编号规则需要在前一个编号值的基础上递增1。
- 整个编号值计算出来后,需要校验字段值的唯一性。
##### 纯序号
以下步骤描述了一个纯序号类型的编号规则是如何找到前一个编号值的:
- 从数据库中查找该自动编号字段关联的自动编号配置,配置中的”当前编号值“就是需要找的前一个编号值。
- 如果数据库中未查找到任何关联自动编号配置,则自动新建一个”当前编号值“为0的自动编号配置记录,0值即是需要找的前一个编号值。
- 如果数据库中找到多条关联自动编号配置,则以找到的第一条为准,取其”当前编号值“属性值作为前一个编号值。
##### 混合编号
对于包含日期和序号的编号规则,因为每一轮日期范围会重置一次序号值,所以它找到前一个编号值的过程与纯序号类型不一样,以下步骤描述了相关过程:
- 从数据库中查找该自动编号字段关联的自动编号配置,查找时根据公式中引用的年、月、日规则,增加对应的日期范围开始日期与截止日期过滤条件。
- 如果数据库中未查找到任何关联自动编号配置,则自动新建一个”当前编号值“为0的自动编号配置记录,该配置的日期范围开始日期与截止日期两个属性值是根据公式中引用的年、月、日规则自动算出来的,同时取0值作为需要找的前一个编号值。
- 如果数据库中找到一条或多条关联自动编号配置,则以找到的第一条为准,取其”当前编号值“属性值作为前一个编号值。
##### 手动编号
当通过字段权限配置来允许用户在界面上编辑自动编号字段值时,应该遵循以下规范以兼顾自动编号字段值计算规则:
- 界面上编辑自动编号字段值保存时不会更新自动编号配置中的“当前编号值”属性,即手动编号值不参与自动编号规则计算。
- 如果手动编号时输入的值正好符合该自动编号字段的编号规则,后续创建业务记录计算自动编号值时应该跳过该编号值以保证自动编号字段值的唯一性。
#### 必填规则
因为自动编号字段值是在服务端自动计算生成的,所以不支持该字段类型的字段的必填属性,以避免新建记录时报错。
Expand Down

0 comments on commit 5b8915e

Please sign in to comment.