退回(Rollback Work Item)
退回是针对本人(工作流参与者)的“待办任务”的操作,即参与者主动退回待办任务列表中的任务。
为什么要退回?
参与者接受任务后,发现不应由自己办理此任务或上一步的执行者办理有错误等情况后,需要将此接受的任务退回给上一步的执行者重新办理。
退回的原则:执行退回以不影响本活动以及前活动的其他执行者已完成的工作为基本指导原则。
以下是一些不可执行退回的场景,当然这不是绝对的,有的引擎设计是可以支持部分下列场景的退回,所以,仅供参考。
1. 本活动的定义不允许对任务执行退回操作。
2. 本活动非单任务,且有其它任务已经被完成。
3. 本活动非单任务,且有其它任务正在处理中。
4. 本活动为流程定义的第一个活动,即没有可退回的前活动。如图4
5. 前活动为自动活动的情况,如图5
6. 前活动为子流程活动的情况,如图6
7. 前活动的分支流转策略为“与”且有两个或两个以上的分支(AND-split),如图7
图注:蓝色标识本活动,即待办任务所处的活动。
补充说明
退回原则上应该支持AND-join场景的退回。
如果本活动和前活动之间存在一个或多个路由节点,则路由不会对退回规则产生任何影响,引擎在做退回运算时将跳过所有路由节点。
——以上是我以前在实现工作流引擎系统时的一些设计和指导原则,现在发表出来,供大家参考。不足之处,欢迎拍砖。
分享到:
相关推荐
工作流引擎设计是一个复杂而关键的任务,涉及到许多方面的考量。工作流引擎的目的是为了帮助企业高效地管理和自动化工作流程,因此其设计必须以创造价值为核心,而非单纯追求技术特性。WfMC虽然定义了标准,但并没有...
此外,智软工作流引擎 v6.1 还可能包含了"说明.htm"文件,这是一个详细的操作指南或用户手册,它将帮助用户更好地理解和使用这款引擎,包括如何创建流程、配置表单、定义规则以及跟踪流程状态等。通过阅读这份文档,...
这个工作流引擎提供了一套完整的解决方案,包括设计、部署、执行和监控工作流实例。jdpm不仅是一个工具,它更是一个强大的平台,允许开发者和业务分析师以灵活的方式定义和管理业务流程。 在提供的文档资源中,我们...
Activiti 是一个开源的工作流引擎,它基于 BPMN 2.0 标准,提供了一套完整的流程定义、执行和监控工具。本文将详细探讨如何在 Activiti 中实现流程图的高亮显示,特别是已执行的节点和已执行路径。 首先,理解 ...
工作流引擎通常提供统一的接口,由客户自定义代码来匹配处理回退路径,确保业务数据的一致性。 实现回退业务的方式有两种主要策略:一种是通过在流程定义阶段显式绘制回退线,虽然这可能导致流程图变得复杂,但清晰...
工作流引擎是工作流管理系统的核心部分,负责流程的调度和执行。它包括以下几个关键组件: - **流程定义**:定义流程的结构和规则。 - **流程调度**:管理流程实例的启动和执行顺序。 - **流程执行**:执行流程实例...
3. **接口和服务**:定义了与工作流引擎交互的标准接口,如创建、修改、取消工作单等。 #### 三、平台要求 本项目采用的技术栈包括QeePHP框架、Apache2服务器以及MySQL5数据库。这些技术的选择基于其成熟度、稳定...
驰骋工作流引擎源码 产品名称: 驰骋.net工作流程引擎. 运行环境: BS结构. windows xp, windows server. win7 IIS6.0以上. .net4.0. Office2007 (如果需要单据打印.) 开发语言: VS2010, .net4.0 c#.net. 客户端: ...
总的来说,用Java实现工作流涉及到多个方面,包括理解业务需求、选择合适的工作流引擎、设计和实现流程模型、处理服务集成、权限控制以及监控与调试。熟练掌握这些知识点,能帮助开发者构建出高效、稳定的工作流系统...
Smart WorkFlow由三个主要部分组成:工作流引擎(Smart WF Engine)、工作流定制(Smart WF Design)和工作流应用(Smart WF Application)。工作流引擎作为核心,采用RMI(Remote Method Invocation)技术在分布式系统中...
### 成信工作流引擎体系架构与介绍 #### 一、工作流模型详解 **1.1 流程启动模型** 工作流的启动是整个流程管理的第一步,它标志着一个特定业务流程的开始。成信工作流引擎采用了单一的启动节点模型来确保流程的...
在Windchill中,工作流引擎会根据用户在业务流程中的角色分配任务,如审阅、创作或批准产品数据。与传统的办公自动化(OA)系统不同,Windchill工作流专注于产品数据的管理,与流程紧密关联,并对产品数据进行严格...
综上所述,电力调度分布式工作流的设计与实现是一项复杂的任务,涉及安全、效率、系统性和完整性等多方面因素。在设计和实现过程中,需要充分考虑各种因素,以确保电力调度工作顺利进行。同时,这也需要相关技术和...
Activiti是一款开源的工作流引擎,它为业务流程自动化提供了强大的支持。在开发和运维过程中,流程跟踪图是非常重要的工具,可以帮助我们理解流程的执行状态,定位问题,优化流程设计。本实例聚焦于如何生成和查看...
通过集成Flowable工作流引擎,系统能够支持复杂的业务流程定义、执行和管理。同时,结合Spring Boot框架,系统具备快速开发、易于部署和维护的特点。 ## 项目的主要特性和功能 ### 1. 流程定义与管理 流程设计...
总的来说,"Activiti5.16工作流工程代码"是一个深入学习 Activiti 工作流引擎和实践 BPMN 流程建模的好资源。通过分析和运行这个项目,你可以了解到如何将 Activiti 集成到你的应用程序中,以及如何设计和管理复杂的...
第一篇 jBPM工作流开发基础 1 第1章 工作流基础 2 1.1 工作流概念 2 1.1.1 工作流管理思想之于企业现代化管理 2 1.1.2 工作流技术在企业中的应用 5 1.1.3 如何从一个开发者的角度看工作流技术 6 1.2 工作流管理系统...
总结来说,U8V10.0产品的工作流功能旨在帮助企业构建灵活、可定制的审批流程,通过工作流引擎和设计器实现业务流程的自动化和优化,提高效率,满足不同角色用户的操作需求,并通过监控台进行有效的流程管理和监控。