zoukankan      html  css  js  c++  java
  • 关于SharePoint 2013的工作流(二)

    摸索完了如何画流程实现功能接下来,就是如何配置和部署了。在添加工作流之前,肯定需要一个审批人的配置以及阀值等等的配置。

    这个的实现基本上和以前的工作流一致。写法却不一样了,模板自带的都是用js实现的。

    读取这里面的配置用的是一个叫GetConfigurationValue的activity。

       

    在审批页面获取需要用C:WindowsMicrosoft.NETassemblyGAC_MSILMicrosoft.SharePoint.WorkflowServicesBasev4.0_15.0.0.0__71e9bce111e9429cMicrosoft.SharePoint.WorkflowServicesBase.dll,当然如果js牛逼可以用js model。

       

    WorkflowServicesManager workflowServiceManager = new WorkflowServicesManager(SPContext.Current.Web);

    var workflowInstanceService = workflowServiceManager.GetWorkflowInstanceService();

    var instance = workflowInstanceService.GetInstance(Guid.Parse(SPContext.Current.Item["WF4InstanceId"].ToString()));

    var subscriptionService = workflowServiceManager.GetWorkflowSubscriptionService();

    var subscription = subscriptionService.GetSubscription(instance.WorkflowSubscriptionId);

    if (subscription.PropertyDefinitions.ContainsKey("ApprovallogField"))

    {

    string ApproveLogField = subscription.PropertyDefinitions["ApprovallogField"];

    }

       

    完成工作流代码也非常简单,直接复制1后update一下就好了。

    var item = TaskItem;

    item["OutcomeColumn"] = this.OutCome;

    item["TaskOutcome"] = this.OutCome;

    item["PercentComplete"] = "1";

    item["Status"] = "Completed";

    item.Update();

       

    总的来说没有太多困难的地方,当然如果用一个大的Code Activity来做流程图看着应该更简洁一下。

  • 相关阅读:
    JS设计模式——工厂模式详解
    JS 使用const声明常量的本质(很多人都有误解)
    模拟ES6中的Promise实现,让原理一目了然
    JS设计模式——观察者模式(通俗易懂)
    JS设计模式——单例模式剖析
    C#播放文字内容
    通过自定义扩展方法DistinctBy实现去重
    C#缓存HttpRuntime.Cache
    Oracle中dblink的使用
    Oracle查询最近执行的sql脚本
  • 原文地址:https://www.cnblogs.com/Believeme/p/4512476.html
Copyright © 2011-2022 走看看