SharePoint 2013 状态机工作流之扩展自定义状态

当我们使用SharePoint 2013的状态机工作流时,发现一个非常不爽的事情,就是SharePoint 所有的工作流状态,都是固定的那些,没办法显示我们自定义的状态,后来经过Google发现,原来这个状态是可以自定义的。

  自定义状态步骤

1、  修改xml添加MetaData下面的扩展项;

<ExtendedStatusColumnValues>

  <StatusColumnValue>测试状态1</StatusColumnValue>

  <StatusColumnValue>测试状态2</StatusColumnValue>

  <StatusColumnValue>测试状态3</StatusColumnValue>

  <StatusColumnValue>测试状态4</StatusColumnValue>

  <StatusColumnValue>测试状态5</StatusColumnValue>

</ExtendedStatusColumnValues>

截图如下:

clip_image001

2、  在工作流中声明自定义状态的枚举类型;

publicenumSPWorkflowStatus

{

    测试状态1 = 0,

    测试状态2 = 1,

    测试状态3 = 2,

    测试状态4 = 3,

    测试状态5 = 4,

    Max = 15

}

3、  在工作流的过程中,添加“SharePoint 工作流中的SetState项,如下图;

clip_image002

4、  在新添加的SetState项中,修改CorrelationworkflowToken(与onWorkflowActivated一样),不要任何的TaskToken,如上图;

5、  创建新的State字段并与之关联,如下图;

clip_image003 

6、  双击添加的SetState创建方法,在里面初始化状态;

privatevoid setState2_MethodInvoking(object sender, EventArgs e)

{

    setState2.State = (Int32)SPWorkflowStatus.Max + 1;

}

7、  效果如下两图:

clip_image004

(图1 列表展示页) 

clip_image005

(图2 工作流状态页) 

  结束语

其实没什么可说的,谷歌的解决方法,地址附后。

  http://sharepoint.ginni.me/2010/01/setting-workflow-status-to-custom.html

  http://blog.naikoo.com/?p=25

posted @   霖雨  阅读(2598)  评论(0编辑  收藏  举报
编辑推荐:
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示