我们以请假流程为例,来看看钉钉的审批流是怎么样设计的。点击“编辑”即进入到了流程的设计界面,一共分为了4个步骤,分别是基础设置、表单设计、流程设计和高级设置。
1. 基础设置
基础设置用于设置表单的基础信息,包括了表单图标、表单名称、所在分组、表单说明、谁可以发起(默认是整个组织/公司/团队)、模板管理员(即谁可以维护该表单)和权限管理。
这里我们看一下发起人范围设置,这一点上钉钉的设计非常灵活,选择范围支持按部门 人员混合选择,即同时允许某些部门和某些人发起某项审批。通过这种灵活的组合,可以满足各种各样的发起人限制,从而支持企业的个性化需求。
基础设置还留了一个权限管理的入口,这个实际是高级设置的功能,这里应该是钉钉的产品设计一个小细节。因为高级设置采用分栏设置,而权限设置不在第一栏,有时候可能会遗漏权限的设置,因此放在这里可以先设置权限。
2. 表单设计
钉钉的审批表单设计采用了“所见即所得”的拖拽式表单设计器。布局上,左侧是表单控件区、右侧是表单的信息和表单控件的属性设置,中间则是表单预览区。设计表单的时候,用户可以直接从左侧的表单控件区拖拽表单到预览区,然后在右侧设置该字段的属性即可完成一个表单字段的增加。删除表单字段只需要点击选中一个字段后,点击小垃圾桶图标删除即可。
钉钉的表单控件有下面几个特点值得我们参考:
- 种类全面:除了常用的输入框、日期时间选择、单选框、多选框、图片、附件外,还集成了数字输入、金额(数值类可用于流程条件和金额输入)、身份证、电话等类型的表单控件;
- 增强控件:增强控件其实就是能够和系统其他数据进行关联,或者可以自定义复杂数据项的控件,比如部门、联系人、外部联系人就可以自动从系统读取相关数据供选择;级联/分类控件支持设置树形的级联选择;计算公式可以对表单区的其他数值类字段进行公式运算等等。
- 关联审批单:有些审批是需要其他审批作为佐证的,举个例子,采购付款申请可能需要附上已经审批过的采购审批。关联审批单就能够很好地解决这种场景。
订单的表单控件相比本人最早用的版本已经强大了太多,早期的时候基本上就是基础的表单控件加上简单的部门、数值、金额类控件。现在的控件,可以说已经能够满足99%的场景了。
钉钉还提供了表单套件功能,表单套件是一组带业务功能的表单,当审批完成后这些表单数据会自动同步到对应的业务系统。举个例子,请假中的请假/调休套件就有请假类型、开始时间和结束时间,这些数据会自动同步到个人的考勤记录中,以便人事部门核算薪资。
除此之外,钉钉还提供了关联表单,关联表单是可以选择某一条或多条关联的审批,然后自动同步(或复制)其中表单的值。举个例子,假设公司规定调休必须要有对应的加班记录,那么在调休表单中就可以与加班申请表单进行关联。这样员工请调休假时,就需要选择对应的加班记录进行调休。
3. 流程设计
钉钉的流程设计相比传统的 OA 系统来说体验要好很多,采用自上而下的结构,不同类型的元素采用不同的颜色区分,整体来说用户的学习成本不高(我们之前的行政小姐姐都是自己摸索就能搞定公司内部的各项审批流程设置)。