java 状态机工作流_7.4.14 状态机工作流(1)

7.4.14  状态机工作流(1)

本节来了解SharePoint中的状态机工作流。状态机工作流主要跟以下几个活动有关。

State:表示一个审批状态。内部可以放置StateInitialization、EventDrivenActivity和StateFinalization 3个活动。

StateInitialization:用来初始化状态,一般在这个活动内部添加CreateTask实现任务的创建。

StateFinalization:当状态结束时被执行。

EventDrivenActivity:用来接受事件,一般在内部放置一个OnTaskChange活动等待任务完成。

SetState:用来实现流程状态的跳转。SetState活动一般放置在OnTaskChange活动后,在任务完成后按照任务表单域设置流程状态。

本节将上一节的多状态工作流采用状态机来实现。首先新建一个SharePoint state machine workflow项目。直接采用上一节开发的StateApprovalForm.xsn和ReSubmitForm.xsn表单模板,将这两个模板发布到项目目录下,修改配置文件,在feature.xml中添加如下配置。

在workflow.xml的MetaData节点下添加如下配置。

urn:schemas-microsoft-com:office:infopath:StateApprovalForm:

-myXSD-2008-10-02T19-07-06

urn:schemas-microsoft-com:office:infopath:ReSubmitForm:

-myXSD-2008-10-02T19-07-06在Workflow节点下添加如下属性。

TaskListContentTypeId="0x01080100C9C9515DE4E24001905074F980F93160"

拖曳4个State活动到设计器中。分别改名为preApprovalActivity、approvalActivity、reSubmitActivity和completeActivity。通过右键菜单,将completeActivity活动设置为终止状态,如图7-137所示。

双击Workflow1InitialState活动中的"EventDriven"活动,在其中添加一个SetState活动,设置其TargetState为"preApprovalActivity"。状态机的每个状态的处理方法基本是一样的,下面是preApprovalActivity活动的实现方法。

e415cc289a56e771e876b944f1eccac7.png

(点击查看大图)图7-137  状态机工作流设计器Step1  添加CreateTask活动,创建审批任务。拖曳stateInitializationActivity到preApprovalActivity内部,双击"stateInitializationActivity",在stateInitializationActivity内部添加一个CreateTask活动,改名为"createPreApprovalTask",指定其CorrelationToken为"preApprovalTaskToken",将其SpecialPermission属性绑定到工作流的preApprovalTaskSpecialPermissions字段,TaskId属性绑定到工作流的preApprovalTaskId字段,TaskProperties属性绑定到工作流的preApprovalTaskProperties字段,如图7-138所示。

c2f11df3c77fbd81a987d14911f71287.png

(点击查看大图)图7-138  createPreApprovalTask的属性设置

【责任编辑:云霞 TEL:(010)68476606】

点赞 0

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值