QuickFlow教程(8)—Step Modification in VS2008 and QF

所谓Step Modification,是指管理员可以任意控制当前流程的执行步骤,比如以下的需求:

误操作回退:当某一级审批人误操作后(例如误点击了提交按钮),怎么在下一级审批人审批之前退回,重新审批。

QuickFlow内置了这个功能, 可以允许管理员对工作流步骤进行管理。

当前版本(Build100316)的Step Modification只支持QuickFlow+VS2008(InfoPath或aspx form), 并不支持QuickFlowDesigner设计的流程. 

下面看个例子:

1)用VS2008新建一个SharePoint顺序工作流。

QuickFlow教程(8)—Step Modification in VS2008 and QF_第1张图片

2)添加对QuickFlow.dll的引用,并修改工作流的基类为QuickFlow.FlowchartWorkflow

3)添加一个Start活动,指定其CorrelationToken属性,并添加两个Task活动,添加一个EnableStepModification活动。

如下图。

QuickFlow教程(8)—Step Modification in VS2008 and QF_第2张图片

4)修改workflow.xml文件,指定ModificationUrl和ModificationID

如下:

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <Workflow
     Name="QFExamples_StepMod"
     Description="My SharePoint Workflow"
     Id="f5b50d75-85da-48d3-9775-2616c3caea4b"
     CodeBesideClass="QFExamples_StepMod.Workflow1"
     CodeBesideAssembly="QFExamples_StepMod, Version=1.0.0.0, Culture=neutral, PublicKeyToken=dc008f2bb43d9b78"
     
     ModificationUrl="_layouts/QuickFlow/WrkMod.aspx"
     
     >     

    <Categories/>
    <MetaData>
      <Modification_93a2410e-8590-44c2-a6cd-4ef60347b380_Name>Step Mod</Modification_93a2410e-8590-44c2-a6cd-4ef60347b380_Name>
      
      <StatusPageUrl>_layouts/WrkStat.aspx</StatusPageUrl>
      
      
    </MetaData>
  </Workflow>
</Elements>

 

5)部署工作流。

6)测试

启动工作流后,在工作流状态页面多出一个Step Mod链接

QuickFlow教程(8)—Step Modification in VS2008 and QF_第3张图片

单价这个链接即可到步骤管理页面:

QuickFlow教程(8)—Step Modification in VS2008 and QF_第4张图片

本文示例代码下载:

http://cid-7f5a25cdf47d03e6.skydrive.live.com/self.aspx/QuickFlow/QFExamples^_StepMod.zip

注意:

请下载最新版本:http://quickflow.codeplex.com/ 

Build100316)之前的版本StepMod页面会出错。

或者,你可以手工修改QuickFlow/StepMod.aspx的Page指令为:

<%@ Page MasterPageFile="~/_Layouts/application.master" Language="C#" AutoEventWireup="true"
CodeBehind="WrkMod.aspx.cs" Inherits="QuickFlow.UI.ApplicationPages.WrkMod,QuickFlow.UI.ApplicationPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ec1e0fe6e1745628" %>

 

后记: Build100320以上版本已经支持QFD设计的工作流启用StepModification了,详见:
http://www.cnblogs.com/jianyi0115/archive/2010/03/20/1690566.html

 

你可能感兴趣的:(vs2008)