业务规则
在创建、查看或编辑记录数据时,通过设定业务规则,可以更改某个或多个字段它的属性(隐藏、显示、只读、编辑、必填),或者锁定记录不允许编辑,也可以比较字段之间的内容,然后提醒给操作人员。
功能示例
1、在做调查问卷时,如果“满意度” 选择了不满意,则显示“意见”字段让提交者填写,如果是选择满意,则无需显示“意见”字段。
2、在出库某个商品时,如果出库量大于商品当前的库存量,则不能保存并提醒给用户。
3、当审批单为审核中时,锁定记录,不能编辑。
规则作用
满足规则条件后,可实现以下7种效果
可以控制字段的隐藏或显示
可以修改字段属性为 只读、可编辑和必填
可以锁定整条记录谁都不能编辑,不满足条件自动解锁记录
给操作人弹窗提醒
配置入口
应用管理员找到要配置的工作表,然后依次点击 编辑表单 > 表单设置 > 业务规则。
规则的组成
一条业务规则由一个或一组条件、一个或一组动作组成。
条件
支持设定1个条件,或多个条件组合。每个条件由条件字段+比较关系+条件值组成。
固定值:例如满意度是选项,只有两个选择,这时就能选择固定值(满意或者不满意)
字段值:例如出库量和库存的对比,每个商品库存会随时变的,应该选择为字段值。
动作
满足条件后,执行的操作,目前有以下几种动作:
- 显示某个/某些字段
- 隐藏某个/某些字段
- 将字段设置为只读
- 将字段设置为可编辑
- 以弹窗的方式提示给操作人
- 锁定当前记录 锁定记录仅工作表操作时有效,按钮、工作流操作时不受影响
实例演示
案例1、满足条件时显示字段
场景:在做调查问卷时,如果“满意度” 选择了不满意,则显示“意见”字段让提交者填写,如果选择满意,则无需显示“意见”字段。
表单配置:
只有两个字段
字段A:【您对我们的售后服务是否满意】
字段B:【请填写不满意的地方】
需要实现的效果
- 当字段A选择了 “不满意” 时,字段B才会显示并允许用户填写内容。
开始配置规则
为字段B配置显示规则
一个规则由显示的字段和条件组成。
条件设置: 字段是不满意(固定值)时
执行的动作: 显示字段B(意见和建议字段)
效果
案例2、对比字段值后提示相关信息
场景:在出库某个商品时,如果出库量大于商品当前的库存量,则不能保存并提醒给用户。
由于库存量是一个随时变化的量,因此选择字段值。
表单配置
效果:
规则的常规管理操作
- 查看或编辑规则
- 删除规则、复制规则
- 规则排序
- 开启或关闭规则
业务规则是否满足条件后的处理逻辑
如果为某个字段设定了业务规则,满足规则条件时和不满足规则条件时处理逻辑如下图。
举例说明:
第1行,业务规则中设定字段A是显示的,如果不满足规则条件,则字段A是隐藏的,无论字段的原属性是隐藏还是显示。因为显示和隐藏是绝对对立互斥的关系。
第3行,业务规则中设定字段A是可编辑,如果不满足时,则取字段的原来的属性(是否只读),并不会设置为只读,因为可编辑并没有唯一的对立属性,可能是只读,也可能是必填,因此不满足时会取字段原来的属性。
常见配置问题示例
如下图,对于“推广活动名称”这个字段,有两个规则让其显示,但是这样配置的话, 这个字段始终是隐藏的。
原因:
前面我们讲过,如果符合规则中条件后让字段显示,那么如果不符合条件,会让其隐藏的。 在这个场景中,线索来源只能是"广告推广"或“Email推广”的其中一个,那么符合其中一个规则条件,就一定不符合另一个规则的条件了,隐藏不符合规则的会让其隐藏。
正确的配置:
对于同一个字段,尽量放在一个规则中。
业务规则、工作流、角色权限对字段影响的优先级
字段的4个原始属性和1个必填验证
在工作表中配置字段时,可以设定4个原始属性和1个必填验证
- 隐藏
- 显示(不勾隐藏则为显示)
- 只读
- 编辑(不勾只读则为可编辑)
- 必填(可编辑时必须验证)
它们之间的优先级是:隐藏>显示>只读>必填>编辑
很多地方都能控制一个字段的属性,例如字段配置(隐藏、新增时隐藏)、视图、角色权限、自定义按钮、工作流(审批、填写、通知等节点)和业务规则。那么他们和业务规则的的优先级是怎么样的?
1、"新增时隐藏"不受"业务规则"影响
例如,某字段设置了“新增时隐藏”,那么新增记录时该字段始终是隐藏的,不受任何影响。
2、业务规则高于字段原始属性
- 如果某个业务规则让字段A显示,则此字段必然显示,即使字段里设置了隐藏。
- 如果某个业务规则让字段A可编辑,原始属性设置为隐藏,那么此字段最终是显示并可编辑的。
- 字段中设置的必填,只要字段可编辑,会加上必填验证,如果字段只读,则为只读。
3、多个业务规则之间,取属性优先级
将每个规则对比叠加,取最高优先级,然后覆盖字段原始属性。
例1:对于一个字段A,规则1为隐藏,规则2为显示,规则3为可编辑,原始属性设置为显示,最终字段A是隐藏的。
例2:对于一个字段A,规则1为可编辑,规则2为必填,原始属性设置为只读,最终字段A是必填的。
4、工作流、按钮、角色权限和业务规则之间取属性最高级
任意两种配置之间会按照属性优先级取最高级属性,然后再覆盖字段的原始属性。
其实只要有工作流、按钮、业务规则参与进来,那么字段配置都会被覆盖掉。
5、锁定记录
业务规则中锁定记录只对工作表操作时有效,即直接通过工作表打开记录时,记录会锁定,还可以通过以下两种方式编辑。
可以通过自定义按钮编辑字段
工作流中的填写节点、审批节点、发送站内通知节点打开记录,依然可以继续编辑,不会锁定。
业务规则中字段隐藏时有效性逻辑
业务规则中参与的字段不可见,对业务规则的执行是有影响的,不同的规则动作有不同的逻辑。业务规则的动作主要分两类:
提示错误
非提示错误动作
- 显示、只读、隐藏、必填、可编辑、锁定
1 非提示错误动作的处理逻辑
只要条件字段存在没被删除,业务规则就执行。
2 提示错误的处理逻辑
A > 0 时,提示错误:xxx
示例:出库量 < 10 时;提示错误 :每次出库必须大于10。当出库量字段隐藏时,则不会提示错误;
A > B 时,提示错误:xxx
示例 :出库量 > 库存量 ,提示错误:xxx
- 条件字段(出库量)隐藏时,执行业务规则
- 条件值字段(库存量)隐藏时,忽略业务规则
- 出库量和库存量两个字段都隐藏时,忽略业务规则
A >0且B>0 时,提示错误:xxx
AB只隐藏一个,两个条件正常判断,规则正常执行。
AB都隐藏,则忽略业务规则
(A > B) 或 (C > D) 时,提示错误:xxx
- 当A或B隐藏时,按上面逻辑处理
- 当A和B都隐藏时,忽略A>B这组条件,走C>D这组条件;
字段隐藏指的是以下场景
- 字段配置的属性隐藏
- 视图隐藏的字段
- 业务规则隐藏的字段
- 公开表单未使用的字段
- 子表/关联记录未启用显示的字段
- 审批/填写按钮用隐藏的字段
文档问题反馈
文档中是否有错别字、内容过期、难以理解等问题? 点此给我们反馈吧