Slickflow.NET 开源工作流引擎基础介绍(一) -- 引擎基本服务接口API介绍
1. 工作流术语图示
图1 流程图形的BPMN图形元素表示
1) 流程模型定义说明
流程(Process):
是企业组织对业务过程的工作流语言描述。一个完整的流程包括开始节点,中间节点和结束节点。活动(Activity):
对每一个工作项节点上的内容定义,也包括网关,事件等节点。转移(Transition):
表示起始节点和到达节点之间的状态转移。执行者(Performer):
每一个节点定义的角色和用户,作为活动的执行主体。2)流程流转实例数据存储说明
流程实例(ProcessInstance):
存储业务过程流转数据,包括流程标识,业务数据标识和流程发起时间,当前状态和结束时间等信息。活动实例(ActivityInstance):
存储每个流程节点的实例信息,包括活动节点的标识,状态,接收人,办理时间,结束时间等信息。转移实例(TransitionInstance):
存储每条转移的状态数据,包括转移表示,起始节点信息,到达节点信息。任务实例(Tasks)
活动接收和办理人的信息列表,待办任务和已办任务的数据来源。
2. 流程服务方法调用图示

图2 流程服务接口调用示意
流程服务常用的6个API接口具体描述
流程从启动,运行到最终结束时,需要调用引擎服务API接口。
1) StartProcess()
启动流程调用此方法,生成流程实例,并置状态到开始节点之后的任务节点。
2) RunProcessApp()
流程运行调用此方法,将当前任务结束,并分发任务给下一步节点的办理人。
3) JumpProcess()
跳转到指定的任务节点,有预先指定方式,或运行时动态调用方式。
4) WithdrawProcess()
当前任务节点的上一步节点完成人发现办理有误需撤销,调用此方法,重新回到上一步节点。
5) SendbackProcess()
当前任务办理人退回任务到上一步执行节点。
6) ReverseProcess()
流程结束后仍需返回,由结束节点前的执行人调用此方法,状态回到结束前的节点。
- 官网地址:
http://www.slickflow.com
- 网站演示地址:
http://www.slickflow.com/demo/index
- Github 地址:
https://github.com/besley/Slickflow
- Codeplex地址:
http://slickflow.codeplex.com
Slickflow.NET 开源工作流引擎基础介绍(一) -- 引擎基本服务接口API介绍的更多相关文章
- 引擎基本服务接口API介绍
Slickflow.NET 开源工作流引擎基础介绍(一) -- 引擎基本服务接口API介绍 https://www.cnblogs.com/slickflow/p/4807227.html 工作流术语 ...
- Slickflow.NET 开源工作流引擎高级开发(三) -- 并行分支容器与会签工作流模式的组合
前言: 流程引擎的核心功能是负责解析流程定义XML和流转,业务环节的不断积累,让人们不断总结和抽象出一些模式,这些模式统称为工作流模式(Workflow Pattern).本文的重点就是介绍一种常见 ...
- Slickflow.NET 开源工作流引擎基础介绍(二) -- 引擎组件和业务模块的交互
集成流程引擎的必要性 业务过程的变化是在BPM系统中常见的现象,企业管理层需要不断优化组织架构,改造业务流程,不可避免地带来了业务流程的变化,企业信息系统就会随之面临重构的可能性.一种直接的方式是改造 ...
- Slickflow.NET 开源工作流引擎基础介绍(二) -- 引擎组件和业务系统的集成
集成流程引擎的必要性 业务过程的变化是在BPM系统中常见的现象,企业管理层需要不断优化组织架构,改造业务流程,不可避免地带来了业务流程的变化,企业信息系统就会随之面临重构的可能性.一种直接的方式是改造 ...
- Slickflow.NET 开源工作流引擎高级开发(二) -- 流程快速测试增值服务工具介绍
前言:流程是由若干个任务节点组成,流转过程就是从一个节点转移到下一个节点,通常需要不断切换用户身份来完成流程的测试,这样使得测试效率比较低下,本文从实战出发,介绍常见的两种快速测试方法,用于提升流程测 ...
- Slickflow.NET 开源工作流引擎高级开发(六) -- WebTest 引擎接口模拟测试工具集
前言:引擎组件的接口测试不光是程序测试人员使用,而且也是产品负责人员需要用到的功能,因为在每一步流转过程中,就会完整模拟实际用户发生的场景,也就容易排查具体是程序问题还是业务问题,从而快速定位问题,及 ...
- Slickflow.NET 开源工作流引擎高级开发(一) -- 流程外部事件的调用和变量存储实现
前言:流程实现基本流转功能外,通常也需要调用外部事件,用于和业务系统的交互,同时存储一些流程变量,用于追踪和记录业务数据变化对流程流转的影响. 1. 流程事件 流程执行过程中,伴随各种事件的发生,而且 ...
- Slickflow.Graph 开源工作流引擎快速入门之四: 图形编码建模工具使用手册
前言: 业务人员绘制流程时,通常使用图形GUI界面交互操作来完成,然而对于需要频繁操作或者管理较多流程的系统管理用户,就需要一款辅助工具,来帮助他们快速完成流程的创建和编辑更新.Slickflow.G ...
- Servlet基础(一) Servlet简介 关键API介绍及结合源码讲解
Servlet基础(一) Servlet基础和关键的API介绍 Servlet简介 Java Servlet是和平台无关的服务器端组件,它运行在Servlet容器中. Servlet容器负责Servl ...
随机推荐
- Codeforces Round #245 (Div. 1) B. Working out (简单DP)
题目链接:http://codeforces.com/problemset/problem/429/B 给你一个矩阵,一个人从(1, 1) ->(n, m),只能向下或者向右: 一个人从(n, ...
- Oracle & Sun
2010s January 27, 2010: Oracle acquires Sun Microsystems.
- SuperSlidev2.1 轮播图片和无缝滚动
使用方法,狠狠的点击下面链接 http://down.admin5.com/demo/code_pop/18/562/index.html 简单使用方法如下 html <div class=&q ...
- input type=“submit”屏蔽自带的提交事件
<p><input type="submit" class="submit" value="确认支付" onclick=& ...
- easyUI之tree
转自:http://www.cnblogs.com/CoreCaiNiao/archive/2010/08/20/1804387.html http://blog.csdn.net/l27775918 ...
- 处理Oracle中杀不掉的锁
一些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长时间不释放,有时实在没办法,只好重启数据库.现在提供一种方法解决这种问题,那就是在ORACLE中杀不 ...
- eclipse/MyEclipse 日期格式、注释日期格式、时区问题[转]
http://www.cnblogs.com/hoojo/archive/2011/03/21/1990070.html 在eclipse/MyEclipse中,如果你的注释或是运行System.ou ...
- 单个SWF文件loading加载详解(转)
通过带宽查看器,可以看到SWF中每帧所占带宽状况.另外,我们还可以在Flash发布设置中,选择生成体积报告. 勾选这一项之后,发布flash时,会自动在fla目录中生成一个名为”文件名 Report. ...
- Cocos2D Study - Preparation & Installation
---------------------------------------------------------------------------------------------------- ...
- Codeforces Round #318 [RussianCodeCup Thanks-Round] (Div. 1) A. Bear and Poker 分解
A. Bear and Poker Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/573/pro ...