zoukankan      html  css  js  c++  java
  • How to unlock the locked tasks in Sharepoint Workflow

    How to unlock the locked tasks in Sharepoint Workflow

     
    Sometimes in Sharepoint Workflow, tasks will get locked and you will not be able to proceed further.

    These locks are placed to prevent the task being updated simultaneously. The workflow runtime locks tasks by setting a field (WorkflowVersion)and persisting that to the database.

    if workflowversion is 1 then the tasks are "not locked". Any value apart from "1" symbolises that these tasks are "locked".

    Ideally to remove the locks, we need to update WorkflowVersion of the task to "1".

    Here you go, the sample for it.


    public static void UnlockWorkflowTasks(string siteUrl, string webUrl, string listName)
            {
                using (SPSite site = new SPSite(siteUrl))
                {
                    using (SPWeb web = site.OpenWeb(webUrl))
                    {
                        SPList list = web.Lists[listName];
                        SPListItemCollection items = list.Items;
     
                        foreach (SPListItem item in items)
                        {
                            SPWorkflowCollection workflows = item.Workflows;
                            foreach (SPWorkflow workflow in workflows)
                            {
                                SPWorkflowTaskCollection tasks = workflow.Tasks;
                                foreach (SPWorkflowTask task in tasks)
                                {
                                    if (task[SPBuiltInFieldId.WorkflowVersion].ToString() != "1")
                                    {
                                        task[SPBuiltInFieldId.WorkflowVersion] = 1;
                                        task.SystemUpdate();
                                    }
                                }
                            }
                        }
                    }
                }
            }
     

    Happy Coding :)
  • 相关阅读:
    Spring声明式事务可能出现的问题
    SpringBoot自定义starter
    查找和最小的K对数字
    SpringBoot配置嵌入式Servlet容器和使用外置Servlet容器
    Redis的数据结构及应用场景
    高考还没结束,这份试卷已经流出,你能拿多少分?
    Linux C/C++编程之(十六)进程及进程控制
    Dom4j修改xml文档引入
    淘宝,京东,苏宁易购技术架构(路线)分析和比较
    android 解析服务器数据使用json还是xml方式
  • 原文地址:https://www.cnblogs.com/ahghy/p/2731303.html
Copyright © 2011-2022 走看看