2020年(工作手册)工作流参考手册(doc 86页)

上传人:精****库 文档编号:135868521 上传时间:2020-06-19 格式:DOC 页数:86 大小:2.56MB
返回 下载 相关 举报
2020年(工作手册)工作流参考手册(doc 86页)_第1页
第1页 / 共86页
2020年(工作手册)工作流参考手册(doc 86页)_第2页
第2页 / 共86页
2020年(工作手册)工作流参考手册(doc 86页)_第3页
第3页 / 共86页
2020年(工作手册)工作流参考手册(doc 86页)_第4页
第4页 / 共86页
2020年(工作手册)工作流参考手册(doc 86页)_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《2020年(工作手册)工作流参考手册(doc 86页)》由会员分享,可在线阅读,更多相关《2020年(工作手册)工作流参考手册(doc 86页)(86页珍藏版)》请在金锄头文库上搜索。

1、第第 1 章章 总体说明总体说明 在使用 EOS WorkFlow 的过程中 无论是开发者在 开发环境 中定义业务 流程 还是 工作流引擎 控制流程流转 或是工作流参与者使用的 客户端 再或者管理员使用的 管理与监控工具 在这期间都会贯穿 EOS Workflow 的 5 个主要对象 流程定义 活动定义 流程实例 活动实例以及工作项 1 1 EOS 工作流开发过程简述工作流开发过程简述 EOS 的工作流开发过程可以看作是一个不断迭代的过程 如下图 流程定义 流程发布 流程执行 开始 完善功能或需求变更 首先是分析需求 然后根据需求定义流程 在这个阶段最主要的工作任务 其实是设计 根据业务需求来

2、设计流程 这个流程要怎么走 流程相关的数据 如何流动 流程的参与者如何界定 与流程相关的业务数据如何流动及保存等 等 在这个阶段的工作结果是一个可以发布的流程 第一次形成的流程可能是 一个比较简单的 并不完善的版本 但是随着迭代的进行 这个流程将不断地 被修正和改进 直到形成一个能够使用的版本 接下来是流程的发布 流程发布的目的是让工作流引擎能够识别该流程 在开发环境 JBoss 下可以直接在 Studio 中发布流程 开发阶段一般用此方法 在生产环境中一般是先打包 然后在 http localhost 端口 eosmgr 中发布 流程发布后就可以执行了 流程在执行阶段叫流程实例 它有待启动

3、运 行 挂起 完成 结束 中止等六种状态 我们在设计及开发的过程中可能会犯一些错误 从而导致发布的流程执行 不正确 或者还可能已经开发好的流程满足不了现在的需求 需要进行调整 这个时候迭代就开始了 1 2 概念说明概念说明 流程定义流程定义 描述一个完整的业务过程 它由若干活动组成 包括了流程的 基本信息 流程的开始和结束条件 组成的活动 活动间流转的规则 需要用 户执行的工作任务 工作项 可能调用的应用程序以及流程相关数据等信息 提交到流程定义库 WFProcessDefine 后会包含流程定义 ID 流程定义的唯 一标识 流程定义名称 版本号 流程定义描述以及提交时间等描述 活动定义活动定

4、义 包含在流程定义之中 代表了一个相对独立的 逻辑的工作单 元 一个活动代表一个需要由相关资源处理 或者由计算机处理的任务 其中 定义了该活动的基本信息 执行该活动的参与者 时间限制 工作项信息 触 发事件 启动策略等信息 流程实例流程实例 当流程定义提交 发布到服务器以后 就可以启动该流程 启 动时会创建流程定义的一个实例 叫流程实例 同一个流程定义可以有多个流 程实例 每一个流程实例会被保存在流程实例库 WFProcessInst 中 包括流 程实例 ID 唯一标识 流程实例名称 流程定义 ID 流程实例的状态 该实 例的启动者 启动时间 相关数据等信息 活动实例活动实例 流程实例中的每个

5、活动称为活动实例 每一个活动实例会被保 存在活动实例库 WFActivityInst 中 包括活动实例 ID 唯一标识 活动实例 的状态 所属的活动定义 ID 以及流程实例 ID 时间限制 是否超时 创建时 间等信息 工作项工作项 表示流程实例在流转过程中为完成某个活动实例所要参与者做的 工作 一个活动实例可以对应一个或多个工作项 每个工作项会被保存在工作 项库 WFWorkItem 中 包括工作项 ID 唯一标识 参与者 ID 工作项的状 态 所属的活动实例 ID 流程实例 ID 等信息 对象间的主要关系对象间的主要关系 流程定义和活动定义是在工作流开发阶段所确定 流程实例 活动实例和 工作

6、项则是在工作流运行阶段确定 一个流程定义由多个活动定义组成 一个流程定义可以创建多个流程实例 一个流程实例包含多个活动实例 每个活动实例可以包含一个或多个工作 项 在一些特定的情况下 比如 一个活动要循环执行多次 一个活动定义会 存在多个活动实例 具体如下图所示 其他概念其他概念 工作流工作流 工作流管理联盟 WFMC 给出的 工作流 定义是 全部或者部分 由计算机支持或自动处理的业务过程 干预过程 业务程序的自动化处理 文档 信息或者任务按照定义好的 规则在参与者间传递 来完成整个业务目标或者对整个业务目标的完成 做贡献 同时 工作流 可能由手工组织 参与者参与者 它主要描业务流程在实例化后

7、的运行过程中参与操作的人员 角色或组织 工作流相关数据工作流相关数据 工作流引擎根据工作流相关数据和转换条件进行推进 工作流相关数据的属性 包括数据名称 数据类型和数据值等 它是工作流引擎执行任务推进的依据 转移条件转移条件 主要负责为流程实例的推进提供导航依据 引擎根据转移条件实现流程的流转 聚合模式聚合模式 指当流程中的一个活动存在多个前驱活动时 该活动产生实例的规则将根据 聚 合模式 而定 聚合模式包括 全部聚合 单一聚合 多路聚合 AND XOR OR 全部聚合 模式表示只有当所有前驱活动都运行结束后才启动该活动实例 如 果存在尚未运行结束的前驱活动 则该活动处于等待状态 单一聚合 模

8、式表示 只要任何一个前驱活动运行结束 则该活动即进入运行状态 多路聚合 模式表 示满足条件的前驱活动都完成 该活动才可进入运行状态 分支模式分支模式 当一个活动的后继活动有多个时 需要确定这些后继活动产生活动实例的规则 即分支模式 分支模式包括 全部分支 单一分支 多路分支 AND XOR OR 全部分支 模式表示条件表达式计算结果为 True 的所有活动都产生活动实例 单一分支 模式则表示从后继活动中任选一个条件表达式为 True 的活动产生 实例 单一分支 模式下需要指定一个 缺省迁移 当所有条件都为 False 时 此缺省迁移对应的活动则会产生实例 多路分支 表示该活动的完成会触发所有

9、满足条件的后继活动 工作流客户端工作流客户端 工作流客户端是提供给用户完成工作流任务的浏览 查询 执行的界面 以及 工作流程启动的界面 EOS 工作流客户端通过 web 界面的方式提供给用户 按用户和角色取得工作项 工作列表的自定义归类 工作项的签收 拒收 执行 提醒 竞争工作项的处理 图形化的启动过程 工作流管理监控工具工作流管理监控工具 工作流管理监控工具是为用户提供基于 Web 方式的工作流实例的管理和监控功 能以及业务流程的管理 支持图形化工作流实例的管理 支持图形化监控过程实例的运行情况 支持图形化业务流程的管理 运行期实时数据查询 图形化再现流程运行过程 工作项的重分配 流程统计分

10、析 工作项统计分析 1 3 相关配置说明相关配置说明 以下是一些有用的配置说明 关于 EOS 工作流的具体配置说明请参考附录 配置文件 wfconfig xml 工作流数据连结的配置在哪里工作流数据连结的配置在哪里 在 config eosconfig xml 文件中的 module name workflowworkflow group name database 中 指定了工作流的包名称和 unitID 通过包名称及 unitID 就可以从 EOSEJBREGISTER 表中获得数据库连接的 DATASOURCE 和 IP 地址 带有工作流的 EOS 应用一定要采用数据源的方式 配置了数据

11、源与连接池 且 eosconfig xml 文件中 single 值为 false 连接数据库 这样才能保证工作流 和业务系统中事务的完整性 而且工作流调度引擎需要连接池来处理对数据库 的并发控制 不能使用 JDBC 直接连接 否则在实际的使用中会出现并发控制错 误 例如 使用 EOS5 0 在工作流客户端的 我的任务 待执行的工作任务 执行一个待执行的工作项 该工作项的任务是调用一个人工活动去查一张表 如果在 studio 中启动项目 server 功能一切正常 如果启动外部 server 这 个功能有时候正常 有时候出错 出错页面的截图和详细的 log 见附件 注 出错是不确定的 有时候连

12、续好几次都报错 有时候连续好几次都对 在编 写工作流的业务自动机 业务逻辑 中 相关的工作流操作 如 完成工作流 节点 回退 设置工作流的相关数据等操作 和外部的业务操作都要并在一个 transaction 事务 中 工作流历史表的相关说明工作流历史表的相关说明 EOS 数据库中存在以 WF H 开头的几张表 这是工作流历史表 分别对应了 流程实例 活动项实例 工作项实例等等 业务上经常需要通过这些历史数据 进行统计分析 至于什么时候进行记录备份 帮助文档中没有提到 其实 在 EOS 系统配置文件 wfconfig xml 中 定义了历史记录备份的策略 如 下 TIME BASED 0 30

13、5 00 第第 2 章章 建模过程建模过程 EOS Studio 提供了可视化的开发环境来定义工作流业务流程模型 提供串 行 分支 并行 聚合 循环 同步 子流程等丰富的流程逻辑结构 以及人 工活动 自动活动 路由活动等多种活动类型 并可对这些活动属性进行定义 如参与者类型 触发事件 子流程属性 时间限制 回退动作 多工作项等 定义属性时可选择不同的数据类型 可灵活的扩展活动 可以通过表单数据为 活动节点设置动态表单 其表单数据实现了动态表单的编辑 为日常工作中表 单的定制提供了良好的设计工具 2 1 流程定义流程定义 流程定义由流程属性 活动属性 连接线三部分构成 开发者可以根据实 际中的业

14、务需要设置流程上的基本属性 触发事件 时间限制以及流程启动者 对每一个具体的活动则可根据实际情况设定其运行的方式 参与者以及调用的 应用等信息 完成流程定义的描述后即可提交 发布 提交后的流程将生成 XML 格式的流程定义文件 存入流程定义库中 2 1 1 流程版本流程版本 版本号的产生方式如下 1 开发人员指定 版本号的格式为 X Y ZX Y Z 其中 X 0 Y 0 99 Z 0 99 若指定的版本在流 程定义库中不存在 则按指定的版本号生成新版本 若指定的版本在流程定义 库中存在 则覆盖流程定义库中已有的版本 例如 某流程在流程定义库中存 在 1 1 1 和 1 2 3 两个版本 若要

15、提交第三个版本 开发人员指定新版本号 1 1 2 那么该流程提交流程定义库的版本号即为 1 1 2 若指定版本号为 1 1 1 则该流程在提交流程定义库时会覆盖原有 1 1 1 版本的流程 2 自动生成新版本 获取流程定义库中同一流程的最大版本 并在此基础上 加 1 作为当前流程 的版本号 2 1 2 触发事件触发事件 2 1 2 1 触发事件说明触发事件说明 流程触发事件表示按照流程定义中的设置流程实例在运行到某个阶段所需 要工作流引擎做某种类型的某个动作 某个阶段 即为事件的触发时机 某种类型 即为事件类型 某个动作 即为事件的动作 触发时机触发时机 表示指定的事件动作在何时触发 EOS

16、WorkFlow 提供了创建 动 结束 超时和提醒 5 个触发时机 创建创建 表示指定的事件在流程实例创建时触发 此时流程实例实际上处于 待启动 的状态 并没有合适的活动实例产生 简言之 流程实例此时只是 做好运行的准备 但未真正开始运行 例如 把田径比赛中的 110 米栏比作流 程实例 那么创建时的流程实例就相当于已站在助跑器前的运动员们等待发令 枪响的那一刻 启动启动 表示指定的事件在流程实例启动时触发 此时 流程实例已真正处 于运行状态了 流程实例已开始运行 各活动实例将会相继产生 例如 流程 实例此时的状态若比作 110 米栏 就相当于运动员们听到发令枪响冲离起跑线 的那一刻 结束结束 表示指定的事件在流程实例结束时触发 即流程实例中所有的活动 实例均已完成时触发 超时超时 表示指定的事件在流程实例超时时触发 例如 若流程的超时时间 订为 1 天 那么定义的事件将在流程实例启动时开始计时 并在 1 天之后触发 此事件 提醒提醒 表示指定的事件在流程实例指定的提醒时间触发 例如 若流程的 提醒时间订为 1 小时 那么定义的事件将在流程实例启动时开始计时 并在超 时前 1 小时触发

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号