ค้นหาเว็บไซต์

SharePoint Online: สร้างชุดเอกสารโดยใช้ PowerShell


ความต้องการ: สร้างชุดเอกสารใน SharePoint Online โดยใช้ PowerShell

SharePoint Online: สร้างชุดเอกสารโดยใช้ PowerShell

ในขณะที่โพสต์อื่นของฉันอธิบายวิธีสร้างชุดเอกสารใน SharePoint Online: การสร้างชุดเอกสารใน SharePoint Online - ทีละขั้นตอน โพสต์ในบล็อกนี้จะแสดงวิธีใช้ PowerShell เพื่อสร้างชุดเอกสารใน SharePoint Online

กล่าวโดยสรุป ชุดเอกสารคือคอนเทนเนอร์ขององค์กรที่เก็บเอกสารที่เกี่ยวข้องตั้งแต่หนึ่งฉบับขึ้นไป เหมือนกับการสร้างโฟลเดอร์บนเดสก์ท็อปของคุณสำหรับโปรเจ็กต์ต่างๆ และโฟลเดอร์ย่อยภายในโฟลเดอร์เหล่านั้นสำหรับงานแต่ละงาน สคริปต์นี้ถือว่าเปิดใช้งานคุณลักษณะชุดเอกสารแล้ว ประเภทเนื้อหาสำหรับชุดเอกสารถูกสร้างขึ้นและเพิ่มลงในไลบรารีแล้ว นี่คือสคริปต์ PowerShell เพื่อสร้างชุดเอกสารใน SharePoint Online:


#Load SharePoint CSOM Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"
Add-Type -Path "C:\Program Files\Common Files\microsoft shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.DocumentManagement.dll"

#Parameters
$SiteURL="https://crescent.sharepoint.com/sites/marketing"
$DocumentLibraryName = "Proposal Documents"
$DocumentSetName = "Crescent Inc SharePoint"
#Content Type ID from the List!
$ContentTypeID="0x0120D52000683659260B26AF42AF65E57B09B613C2005AE31D539D0FB244BAEE6EA8CB1F4D52"

#Get Credentials to connect
$Cred= Get-Credential
Try {
    #Setup the context
    $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
    $Ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)

    #Get the Artifacts
    $DocumentLibrary=$Ctx.Web.Lists.GetByTitle($DocumentLibraryName)
    $Ctx.Load($DocumentLibrary)
    $Ctx.Load($DocumentLibrary.RootFolder)

    #Get content type from library by ID
    $ContentType = $DocumentLibrary.ContentTypes.GetById($ContentTypeID)
    $Ctx.Load($ContentType)
    $Ctx.ExecuteQuery()
 
    If($ContentType -ne $Null)
    {
        # sharepoint online powershell create document set from content type
        $DocumentSet = [Microsoft.SharePoint.Client.DocumentSet.DocumentSet]::Create($Ctx,$DocumentLibrary.RootFolder,$DocumentSetName,$ContentType.ID)
        $Ctx.ExecuteQuery()

        Write-host "Document Set '$DocumentSetName' Created Successfully!'" -f Green
    }
    else
    {
        Write-host "Content Type '$ContentTypeName' doesn't exist!'" -f Yellow
    }
}
Catch {
    write-host -f Red "Error:" $_.Exception.Message
}

สคริปต์นี้สร้างชุดเอกสารใหม่ใน SharePoint Online

PnP PowerShell เพื่อสร้างชุดเอกสารใน SharePoint Online

ต่อไปนี้เป็นวิธีสร้างชุดเอกสารใน SharePoint Online โดยใช้ PnP PowerShell:


#Parameters
$SiteURL= "https://Crescent.sharepoint.com/sites/Docs"
$ListName = "Documents"
$ContentTypeName = "Invoice Doc Set"
$DocumentSetName = "Crescent Invoices"

#Connect to the Site
Connect-PnPOnline -Url $SiteURL -Interactive

#Create a Content Type from "Document Set" Parent content type
$ParentCType = Get-PnPContentType -Identity "Document Set"
$ContentType = Add-PnPContentType -Name $ContentTypeName -Group "Crescent" -ParentContentType $ParentCType

#Add the Content Type to Library
Add-PnPContentTypeToList -List $ListName -ContentType $ContentType

#Add Document Set to Library
Add-PnPDocumentSet -List $ListName -ContentType $ContentTypeName -Name $DocumentSetName

โดยสรุป การสร้างชุดเอกสารใน SharePoint Online โดยใช้ PowerShell เป็นวิธีที่มีประสิทธิภาพในการทำให้กระบวนการเป็นอัตโนมัติและประหยัดเวลาเมื่อเทียบกับการสร้างด้วยตนเอง โดยเฉพาะอย่างยิ่งเมื่อคุณต้องจัดเตรียมเอกสารจำนวนมากอย่างรวดเร็ว ด้วยการใช้วิธีการ CSOM และ PnP PowerShell cmdlets และทำตามขั้นตอนที่อธิบายไว้ในคู่มือนี้ คุณจะสามารถสร้างชุดเอกสารและกำหนดค่าให้ตรงกับความต้องการเฉพาะของคุณได้อย่างรวดเร็วและง่ายดาย

บทความที่เกี่ยวข้อง