前言html
最近,有个需求,就是须要批量更新列表内容,平时这些操做,都用powershell去完成,可是,powershell须要在服务器上操做,而服务器权限须要经过客户的层层把关,因此,此次就考虑不用命令了,而改用SharePoint网站工做流,而后,用powershell命令去建立任务计划。web
这样,之后有需求修改,直接在客户端就能作了,而任务计划,是始终不会变的。shell
1.建立网站工做流,这个就比较简单了,咱们就很少少了,直接在SharePoint Designer里干就行了;api
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.建立任务计划能够参考:spa
https://www.cnblogs.com/jianyus/p/10341253.htmlcode
结束语htm
SharePoint的好处就在因而个平台,不少功能有多种多样的方式来完成,而咱们能够根据需求,选中最最适合咱们场景的那一个。blog
固然,这些就须要咱们对SharePoint有这深刻的了解,方方面面的功能都很熟悉了。