工作流

功能简介 分享链接

作者:魏明昊 最后编辑:刘振华 于 2024-11-11 17:03:42 浏览量:722
摘要:工作流不仅可以自定义内置流程里的字段、动作、界面和数据信息,并且对禅道内置流程进行扩展和重写,还可以按照实际使用需要,新增定制和配置个性化的工作流程。

工作流不仅可以自定义内置流程里的字段、动作、界面和数据信息,并且对禅道内置流程进行扩展和重写,还可以按照实际使用需要,新增定制和配置个性化的工作流程。

一、名词解释

  • 流程:流程类似禅道里的功能模块概念,比如产品视图、项目视图、测试视图等。
  • 字段:数据库存储的字段或界面显示的数据项,比如名称、添加时间、指派人等。
  • 动作:某一个具体的功能,比如添加、审批、驳回等。
  • 触发条件:显示按钮或动作的条件,比如状态等于等待审核。
  • 扩展动作(结果):执行完某个动作后需要关联更新的数据(字段)。
  • 数据校验:当查询到某些变量为某一个值时,或时当某一个字段为某一个值时,  执行这个动作后给用户的提示信息。
  • 设置提醒:执行该动作时,给哪些用户发送提醒邮件。
  • 界面:某个动作显示的界面,包含显示的字段、位置等。
  • 数据源:下拉列表等处的数据来源。可以调用系统内置函数、执行sql、自定义。
  • 验证规则:验证数据格式的方式,支持正则表达式。
  • 明细表:用来存储流程的记录明细信息。
  • 列表标签:流程列表页的标签。也就是说在流程的列表页可以通过这些标签来查看和浏览。
  • 子流程:在主流程下的二级菜单中,显示在主流程的菜单之后。子流程不能再添加所属的子流程。

二、新增工作流

点击工作流---流程页面右上角的“新增流程”按钮,就可以添加新的工作流了。

  • 流程名:该工作流的中文名称。
  • icon:工作流发布到一级导航时,菜单上会显示选择的icon。
  • 流程代号:只能填写包含英文的流程代号,不能有空格等特殊字符。代号一经保存后就不可更改。
  • 从属于:从属对象可以选择项目集、产品、项目、执行。不需要则空着。
       1. 以工作流A为例,选择从属于“产品”后,创建每条工作流A数据都需要选择“所属产品”,且工作流A的列表左上角可以切换所属产品查看不同的列表。只有你有这个产品的权限才能看到这条数据。
       2. 选择从属于产品、项目、执行后,才能被对应的流程模板使用。
  • 所属导航:可以选择展示在左侧一级导航,还是上方二级导航中。
  • 所属视图:如果展示在二级导航,需要选择展示在哪个一级视图下。
  • 位置:设置展示位置。
  • 描述: 对该工作流的简单介绍信息。
  • 审批:选择是否开启审批功能。

三、快捷编辑器

1. 界面设计

快捷编辑器模式下,可以通过拖拽、移动、编辑等方式,快速选取所需字段控件,对相关页面进行设计。从左侧选择所需拖动到界面预览处,选中后,可以通过右侧的属性操作区,进行细节编辑。

  • 字段名称: 数据库存储的字段或界面显示的数据项。
  • 字段代号:只能包含英文字母,用于数据库里存储该字段信息。
  • 字段类型:目前支持数字、日期时间、字符串。 数字支持:tinyint、smallint、mediumint、int、decimal、float、double。 日期时间支持:date、datetime、timestamp。 字符串支持:char、varchar、text。
  • 控件:支持标签、文本框、富文本、日期、时间、单选下拉菜单、多选下拉菜单、单选按钮、复选框。
  • 默认值:选择控件后,该控件显示的默认值。
  • 验证规则: 验证数据格式的方式,支持正则表达式。
  • 键值: 外键用来关联显示子流程的数据,外键只能有一个。设为外键的字段应该使用下拉菜单或者单选按钮作为控件,如果设为外键的字段控件不是下拉菜单或者单选按钮,系统将默认更新控件为下拉菜单并选择数据源为子流程。

四、高级编辑器

高级编辑器模式下可以对流程进行更丰富、更多细节的设计,如主表设计、子表设计、动作设计、标签设计、更多设置等,更多设置下又包含跨流程设置、导出设置、搜索设置、JS、CSS等。

  • 主表设计:对主表中字段及属性的设置。
  • 子表设计:主表表单需要填写具体明细信息时,可以通过子表实现。对子表的字段及属性进行设置。
  • 动作设计:添加动作及动作属性的设置。
  • 标签设计:新增检索标签及标签属性设置。
  • 更多 - 跨流程设置:多个相关联流程,如会议室管理——会议室预定。
  • 更多 - 报表设置:可以根据数据表设置图表,展示在列表中。
  • 更多 - 显示值设置:后置流程中将会显示此处选定字段的值。
  • 更多 - 导出设置:允许导出某些字段。
  • 更多 - 搜索设置:允许搜索某些字段。
  • 更多 - JS:自定义JS设置。
  • 更多 - CSS:自定义CSS设置。

1、主表设计

新增流程中创建的数据库表即该流程的主表,主表中已经默认设置了部分不可删除的字段,可以继续添加需要的字段。

1.1 维护字段

字段控件:

  • 小数和整数为数字类型的控件;
  • 时间控件比日期控件多了时分秒的选择;
  • 附件控件用于需要上传文件的字段;
  • 公式控件可以根据设定的计算方式自动计算数值,公式计算对象需要是数字类型控件的字段;
  • 单选下拉、多选下拉、单选框、复选框控件需要选择数据源,数据源中可以选择自定义、公共数据源、系统用户、系统部门、自定义SQL、前置流程、分类设置。

数据源:

  • 系统用户、系统部门可以调用系统中的部门和用户数据;
  • 自定义可以自己定义键值对,比如可以设置状态为等待审批、通过、拒绝等;
  • 前置流程用于该流程做为后置流程时,外键字段的数据源;
  • 分类设置用于生成下图场景,公共数据源中也可以添加公共的分类设置数据源。
默认值:可以设置默认值。

验证规则:验证规则可以选择工作流-验证规则中配置的规则。

注意:内置字段不可以编辑删除。

1.2 使用其他模板字段

注意:如果该流程从属于产品、项目、执行,会自动应用在流程模板中。流程模板中的创建的字段互相不同步,可以点击【使用其他模板字段】进行选择使用。

  • 同一个对象,在不同流程模板中创建的字段名称和代号不能重复,避免您创建相同的字段。

示例,模板1创建字段A后:

  1. 字段A可以被其他模板引用,但是不能修改,只能在模板1中进行修改,其他模板中同步。
  2. 其他模板中中只能解除关联该字段,不能删除。
  3. 模板1中可以删除该字段,删除后,其他模板中也同步删除。
  4. 当字段是单选下拉、复选下拉、单选按钮、复选框,且数据源是自定义的时候,其他模板可以编辑这个字段的数据源,配置一套新的数据源,注意数据源的键值对不可以重复。例如我们可以配置软件模板的需求类型是1、2、3,硬件模板的需求类型是3、4、5.

2、子表设计

子表应用场景,如内置物品采购流程, 与之类似的场景比如内推管理中,被推荐人的履历可能会有多条,每条包含公司、起止时间等多个字段。
在子表设计中新增需要的子表,如采购商品表,系统会在数据库根据代号创建该子表的数据库表flow_代号,点击字段可以设置该子表包含的字段,参考主表字段设置即可。

示例:增加车辆信息-年检信息

3、动作设计

内置动作包括基础增删改查、导入导出、报表、关联、移除等动作,启用动作即可开启相应功能,容易理解,我们介绍下关联数据和移除数据动作。
启用关联数据动作,详情页面会有关联数据按钮,可以选择关联工作流模块生成表中的数据,关联后会在详情页生成对应标签,可以关联多个表。启用移除数据动作,可以移除已经关联的数据。

3.1 添加、编辑动作 

需要注意,添加动作后,主表字段会对应生成由谁动作和动作时间两个字段,因此主表设计时不必添加这方面的字段。

  • 操作数据方式:可以选择操作单条数据还是批量操作。
  • 打开方式:无页面,适应于不需要输入信息的动作;弹窗页面为弹出模态窗口,普通页面为新打开一个页面,二者用于需要输入信息的页面。
  • 显示位置:列表页即该动作显示在数据列表的操作列;详情页即点击进入数据详情后会显示该动作操作按钮;列表页和详情页即二者均显示。
  • 显示方式:直接显示在页面上指的是在列表操作列顺序显示,当动作数较多时,会出现超宽现象,此时可以将不常用的动作设置为显示在下拉菜单中,效果同动作设计中的更多。


3.2 界面

界面用于配置各动作展示内容,点击【设计】按钮,可以维护界面内容。

  • 通过点击字段或右侧显示隐藏可以切换字段是否显示在动作界面;
  • 可以通过拖动字段调整动作界面中的字段排序;
  • 宽度默认为自动,可以根据实际情况输入数字自定义字段所占宽度;
  • 验证规则可以选择预设的验证规则,在表单提交时对字段进行验证;
  • 默认值可以设置页面打开时,该字段可以显示一个常用值,可以减少用户操作;
  • 只读即设置该字段在页面中不可修改,用于仅显示信息给用户的情况。

需要注意的是,当流程存在子表,维护界面时主表字段会多一个与子表名称相同的字段,如果想在页面中显示子表字段,除了要显示子表字段,还要显示这个与子表同名的字段。

当流程存在前置流程,外键字段显示时,可以通过显示前置流程的字段,在页面中只读显示出这些字段的值。

查看详情界面略微特殊,需要设置字段的显示位置,默认有基本信息和详细信息两个区块。可以通过自定义区块标签替换基本信息区块,实现多区块多标签自定义。

3.3 界面联动

界面联动可以设置当某个字段等于某个值时,设定字段显示或隐藏。

点击【界面】进入维护界面,点击底部的【界面联动】按钮,可以维护界面联动。

比如当使用类型为盖章时需要显示盖章时间,隐藏借出时间,使用类型为借出时则相反。源字段和目标字段来自该动作界面的显示字段

3.4 触发条件

触发条件即设置显示或可用该动作的条件。比如状态为待审核,同时当前用户为审核人时,该动作是可用的。触发条件的条件类型也可以选择通过手写sql查询语句进行判断。

3.5 拓展动作

扩展动作指的是动作执行结束后,关联进行的操作。扩展动作中同样存在触发条件的设置(不设置即无条件执行),值得注意的是,此触发条件是在动作执行前判断是否执行该扩展动作,而不是动作执行结束后判断。

扩展动作可以对表进行新增、编辑、删除操作。新增时需要注意选定表的字段限制,如必填的字段必须插入,限定插入某些字符串的字段要插入符合要求的字符串;编辑和删除可以设定扩展动作是否发生的条件,此处一般要进行设置,否则会编辑或删除所有数据。

3.6 数据校验

数据校验主要用于如车辆预订时,意向车辆是否已借出等类似场景。需要注意的是,当满足设定条件时,表单将不会提交,而非相反。

3.7 设置提醒

设置提醒作用类似于抄送给字段,用于动作执行后为相关人员发送弹窗或邮件提醒。

3.8 CSS、JS

可以通过手写CSS和JS代码自定义样式和交互,此处的CSS和JS设置是局部设置,仅对当前动作的页面生效。

4、标签设计

标签即一个菜单,通过设置检索条件筛选该标签下要展示的数据。设置不同用户的标签浏览权限后,即可控制不同用户的数据浏览权限。

5、更多设置

5.1 跨流程设置

跨流程设置应用场景,如内置车辆信息(前置流程)、车辆预定流程(后置流程),车辆信息需要预先添加维护,车辆预订中可以选择添加维护好的车辆进行预订,与之类似的场景比如招聘管理(前置流程)、内推管理等(后置流程)。
跨流程设置在前置流程中设置,后置流程中外键字段的控件应为下拉菜单或单选按钮,数据源应为前置流程。


动作中的四个选择可以设置前置流程与后置流程的关联关系。其在系统中的展现形式如下:

5.2 报表设置

自定义报表功能,可以方便用户对数据进行统计。报表可以设置饼状图、折线图、柱状图三种展现形式,维度可理解为按什么字段分类。
统计类型分为计数和求和,计数是按选定的维度,显示各维度的数据条数;求和还需要选定统计数值,统计数值选定的字段需要是数字类型(小数和整数),报表统计会按选定维度将统计数值选定字段的值进行加和。

5.3 显示值设置

跨流程设置中设置了后置流程,需要启用显示值设置功能,后置流程中将会显示此处选定字段的值。

5.4 导出设置

动作设计启用导出动作后,需要在此处启用导出功能,并设置流程需要导出的字段。

5.5 搜索设置

启用搜索功能后,流程列表页面可以使用选定的字段搜索数据。

5.6 全文检索

全局搜索时可以搜索自定义流程中的数据。需要在更多设置的全文检索中保存检索字段,然后重建索引后生效。设置字段时,标题字段的权重大于内容字段,会在检索结果中优先显示。
注意:重建索引仅第一次设置时操作一次即可,之后无需进行此操作。内置工作流没有全文检索这个设置,因为默认就是可搜索的。

5.7 CSS、JS

可以通过手写CSS和JS代码自定义样式和交互,此处的CSS和JS设置是流程全局设置,加载到所有页面。

6、发布工作流

维护好工作流的配置后,我们就可以将工作流发布了,发布后的工作流会展示在前台导航中。

  • 发布后的功能需要给相关用户配置权限才可以使用。
  • 如果这个工作流从属于产品、项目、执行会自动加入到相关的流程模板中。相关的修改也会同步到产品、项目流程模板中。

五、停用、启用工作流

1、停用工作流

点击【停用】按钮,会停用该工作流,前台用户不能再使用该功能。


  • 如果这个流程在流程模板也存在时,停用会导致流程模板里的所有该对象也会停用,不再展示。
  • 例如“硬件设计”从属于产品,在所有的产品流程模板中展示,此处停用后,所有的产品流程模板不再展示该流程,前台产品中也不会展示这个导航菜单。


2、启用工作流


点击【启用】按钮,会将该工作流重新启用。

  • 如果这个流程从属于产品、项目、执行,导致在流程模板也存在时,启用工作流会询问是否要启用流程模板里的通用流程和自定义流程。
  • -全部启用:所有流程模板中的工作流都同时启用,包括通用的和自定义的。
  • -单独启用:只有这个对象单独启用,所有流程模板中的工作流都不启用,用户需要开启对应流程模板里的流程后,前台才能看到。
  • 如果这个流程从属于产品、项目、执行时,启用后,原本配有权限的用户会在前台直接使用。



返回顶部
杨苗
高级客户经理
13165050229
2692096539
统一服务热线 4006-8899-23
我要提问提问有任何问题,您都可以在这里提问。 问题反馈反馈点击这里,让我们聆听您的建议与反馈。