多个工作流任务表单如何与工作流步骤关联

一般一个工作流工程里面会包含很多工作流任务表单。我们在Visual Studio 2005开发的时候如何让程序知道在某个任务的时候给用户显示相应的工作流任务表单呢?

我们在设计工作流的时候,创建每个任务项的CreateTask Activity的对应有一个SPWorkflowTaskProperties类型的TaskProperties属性。我们在创建一个Task时候一般的过程类似:

 

 
 
  1. private void CreateTask1(object sender, EventArgs e)
  2. {
  3. this.taskID_ReviewerApproval = Guid.NewGuid(); //initialize the task id
  4. this.workflowTask1Properties.Title = "Reviewer: Please review this document";
  5. this.workflowTask1Properties.AssignedTo = this.ReviewerName;
  6. this.workflowTask1Properties.Description = this.instruction;
  7. this.workflowTask1Properties.TaskType = 0;this.workflowTask1Properties.ExtendedProperties["Comment"] = "";
  8. this.workflowTask1Properties.ExtendedProperties["Instruction"] = this.instruction;
  9. this.workflowTask1Properties.ExtendedProperties["CurrentReviewer"] = this.ReviewerName;
  10. }
一般如果你的工作流中只有一个任务表单,上面红色标识的“this.workflowTask1Properties.TaskType = 0;”这句可以不写。
但是,如果你有多个不同的任务表单,就必须包括这句代码来指定使用哪个任务表单。
TaskType的值和Workflow.xml中的Metadata中的Task*_FormURN有如下对应关系:
 
 
 
  1. <MetaData>
  2.      <Instantiation_FormURN>urn:schemas-microsoft-com:office:infopath:SMWorkflowDemoStartForm:-myXSD-2006-05-21T19-13-08</Instantiation_FormURN>
  3.      <Association_FormURN>urn:schemas-microsoft-com:office:infopath:SMWorkflowDemoStartForm:-myXSD-2006-05-21T19-13-08</Association_FormURN>
  4.      <Task0_FormURN>urn:schemas-microsoft-com:office:infopath:SMWorkflowDemoApproveForm:-myXSD-2006-04-27T03-00-28</Task0_FormURN>
  5.      <Task1_FormURN>urn:schemas-microsoft-com:office:infopath:SMWorkflowDemoReviseForm:-myXSD-2006-04-27T03-11-15</Task1_FormURN>
  6.      <Task2_FormURN>urn:schemas-microsoft-com:office:infopath:SMWorkflowDemoApproveForm:-myXSD-2006-04-27T03-00-28</Task2_FormURN>    <StatusPageUrl>_layouts/WrkStat.aspx</StatusPageUrl>
  7. </MetaData>
TaskType为0的对应Task0_FormURN,TaskType为1的对应Task1_FormURN,以此类推。如果不指定TaskType的值,默认使用Task0_FormURN。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值