前言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有這深刻的瞭解,方方面面的功能都很熟悉了。