首页 > 代码库 > 状态机工作流<WWF第七篇>

状态机工作流<WWF第七篇>

  状态机是另外一种常见的工作流类型。它是以状态的变迁为驱动而进行业务流转的,是一定需要人为干预的,而不像顺序类型工作流那样可以按照事先设计好的业务流程一步一步依次执行下去。

一、状态机工作流范例

  State活动有三种状态类型:

  • 起始状态;
  • 业务逻辑过程状态;
  • 终止状态;

  在一个状态机工作流中起始状态和终止状态只能有一个。状态机工作流是从起始状态开始执行,在运行过程中通过业务员逻辑状态的变迁来进行工作流的流转,最终由终止状态标记工作流的结束。因此在状态机工作流设计界面上只能添加"State"状态活动,另外在该状态中还可以添加一个或多个"EventDriven(事件驱动活动)"。

  状态机工作流中大量使用HandleExternalEvent活动来接收应用程序的操作,从而改变工作流上运行表单的业务状态,因此需要定义一个接口程序作为工作流和应用程序之间沟通的桥梁。

  默认的状态机工作流界面图:

  

  在状态机工作流程序中需要指明哪个"State"活动是最先起始的活动,哪个"State"活动是最终结束的活动。

  可以通过点击"State"活动的右键菜单进行设置:

  

  通过拖动EventDriven活动左右两边的节点就可以建立状态间的变迁关系。

  

 

状态机工作流<WWF第七篇>