zoukankan      html  css  js  c++  java
  • 使用SPBuiltInFieldId更新task

    enume Microsoft.SharePoint.PAGETYPE
    Ex. SPList.Forms[PAGETYPE.PAGE_DISPLAYFORM]获取编辑页面;
     
    Class Microsoft.SharePoint.Utilities.SPEncode,编码类;
     
    Class Microsoft.SharePoint.SPBuiltInFieldId,SharePoint内部字段GUID,ex. SPListItem[SPBuildInFieldId.Title],通过字段的GUID获取Item中的内容;

    借用柴总的用法:

    SPSite site = new SPSite("http://windstyle");
    SPWeb web = site.OpenWeb();
    SPList doclib = web.Lists["共享文档"];
    SPListItem doc = doclib.Items[0];
    SPWorkflowTaskCollection tasks = doc.Workflows[doc.Workflows.Count-1].Tasks; //找到具体的SPWorkflowTask
    Hashtable ht = new Hashtable();
    ht.Add(SPBuiltInFieldId.FormData, SPWorkflowStatus.Completed);
    ht.Add(SPBuiltInFieldId.Completed, true); //将任务设置为完成状态
    ht.Add(SPBuiltInFieldId.TaskStatus, "已完成");//将任务在任务列表中的显示状态设置为“已完成”
    ht.Add(SPBuiltInFieldId.PercentComplete, 1); //将任务在任务列表中的完成百分比设置为“100%”
    ht.Add(SPBuiltInFieldId.WorkflowOutcome, "Some output infomation"); //设置任务的输出消息,等同于使用Visual Studio设计工作流时,CompleteWorkflow活动的TaskOutput属性
    SPWorkflowTask.AlterTask(tasks[0], ht, true);

    task[SPBuiltInFieldId.WorkflowVersion] = 1;
                            task.SystemUpdate();
    也可以解决Task被Workflow锁住的问题。
  • 相关阅读:
    设计模式03
    设计模式02
    设计模式01
    HTTP
    C++ 编程学习(六) 函数
    C++编程学习(五) C++ 存储类
    C++编程学习(四)声明/枚举
    ROS常见问题(一) 安装ROS时sudo rosdep init指令报错 最全解决方法
    ROS常用命令或经常碰到的问题
    Ubuntu16.04 在Windows10 系统下的安装(双系统)
  • 原文地址:https://www.cnblogs.com/lxfl2/p/1836932.html
Copyright © 2011-2022 走看看