• SharePoint PowerShell 启动工作流


      前言

      最近,有个需求,就是需要批量更新列表内容,平时这些操作,都用powershell去完成,但是,powershell需要在服务器上操作,而服务器权限需要通过客户的层层把关,所以,这次就考虑不用命令了,而改用SharePoint网站工作流,然后,用powershell命令去创建任务计划。

      这样,以后有需求修改,直接在客户端就能做了,而任务计划,是始终不会变的。

      1.创建网站工作流,这个就比较简单了,我们就不多少了,直接在SharePoint Designer里干就好了;

      2.启动网站工作流的PowerShell代码段,这个显然是本文的重中之重;

    # SharePoint.Workflow.Start-SPSiteWorkflow
    
    param (
       [string]$Url = "http://sharepoint/demos/workflow",
       [string]$Workflow = "Sample Site Workflow"
     )
    
    Add-PSSnapin Microsoft.SharePoint.PowerShell -erroraction
    SilentlyContinue
    [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")
    
    # get the workflow assocation from the target site/web
    $site = Get-SPSite $Url
    $culture = [System.Globalization.CultureInfo]::InvariantCulture
    $wfAssociation = $site.RootWeb.WorkflowAssociations.GetAssociationByName($Workflow,$culture)
    
    if ( $wfAssociation )
    {
        # initialize and optionally update association data
        $assocData = $wfAssociation.AssociationData
    
        # start the workflow
        $wfRunOption = [Microsoft.SharePoint.Workflow.SPWorkflowRunOptions]::Asynchronous
        $site.WorkflowManager.StartWorkflow($site, $wfAssociation, $assocData,$wfRunOption)
    }
    else
    {
        Write-Error "Workflow association not found on target web site."
    }

      3.保存成ps1文件,然后,创建一个任务计划定时去执行就好了;

      4.创建任务计划可以参考:

      https://www.cnblogs.com/jianyus/p/10341253.html

      结束语

      SharePoint的好处就在于是个平台,很多功能有多种多样的方式来完成,而我们可以根据需求,选中最最适合我们场景的那一个。

      当然,这些就需要我们对SharePoint有这深入的了解,方方面面的功能都很熟悉了。

  • 相关阅读:
    【转】自旋锁及其衍生锁
    【转】 android 4.4 Step Counter Sensor计步器的使用
    【转】ListView与RadioButton组合——自定义单选列表
    【转】带checkbox的ListView实现(二)——自定义Checkable控件的实现方法
    【转】Android 带checkbox的listView 实现多选,全选,反选 -- 不错
    【转】linux 原子整数操作详解
    计算机科学界名言
    计算机科学界名言
    益智小游戏(app)
    益智小游戏(app)
  • 原文地址:https://www.cnblogs.com/jianyus/p/10361010.html
Copyright © 2020-2023  润新知