SharePoint Online: เปลี่ยนการตั้งค่าฟิลด์รายการโดยใช้ PowerShell
ข้อกำหนด: อัปเดตการตั้งค่าฟิลด์รายการ SharePoint Online โดยใช้ PowerShell
จะแก้ไขการตั้งค่าคอลัมน์ใน SharePoint Online ได้อย่างไร
คุณสมบัติของฟิลด์รายการ เช่น ชื่อที่แสดง ประเภท หรือการตั้งค่าคอลัมน์อื่นๆ ที่เกี่ยวข้อง สามารถอัปเดตได้ผ่านหน้าการตั้งค่ารายการ เมื่อต้องการเปลี่ยนการตั้งค่าคอลัมน์ในรายการหรือไลบรารี ให้ทำตามขั้นตอนเหล่านี้:
- นำทางไปยังรายการหรือไลบรารี SharePoint Online ที่คุณต้องการแก้ไขคอลัมน์
- ไปที่หน้าการตั้งค่ารายการหรือไลบรารีจาก Ribbon หรือเมนูการตั้งค่าไซต์ >> ภายใต้ส่วนคอลัมน์ ให้เลือกคอลัมน์ที่จะอัปเดต
ในหน้าแก้ไขคอลัมน์ คุณสามารถทำการเปลี่ยนแปลงที่จำเป็นและคลิกปุ่มตกลงเพื่อบันทึก
โปรดทราบว่าการเปลี่ยนประเภทคอลัมน์จะจำกัดเฉพาะคอลัมน์ที่ระบุตามประเภทคอลัมน์ปัจจุบัน นอกจากนี้ คุณอาจสูญเสียข้อมูลเมื่อสลับระหว่างประเภทคอลัมน์ เช่น เมื่อคุณเปลี่ยนจากข้อความหลายบรรทัดเป็นข้อความบรรทัดเดียว จะจำกัดอยู่ที่ 255 อักขระ
PowerShell เพื่อเปลี่ยนการตั้งค่าฟิลด์ในรายการ SharePoint Online
นอกจากนี้เรายังสามารถเปลี่ยนการตั้งค่าฟิลด์สำหรับรายการใน SharePoint Online โดยใช้ PowerShell สิ่งนี้มีประโยชน์หากคุณต้องการเปลี่ยนแปลงคุณสมบัติของฟิลด์ เช่น ชื่อที่แสดง ค่าสถานะที่ต้องการ ค่าเริ่มต้น ฯลฯ
#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"
#Set Config Parameters
$SiteURL="https://crescent.sharepoint.com/sites/projects"
$ListName="Projects"
$FieldName="HeadCount" #Internal Name
#Get Credentials to connect
$Cred= Get-Credential
#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 List
$List=$Ctx.Web.Lists.GetByTitle($ListName)
#Get the List Field
$Field=$List.Fields.GetByInternalNameOrTitle($FieldInternalName)
$Ctx.Load($Field)
$Ctx.ExecuteQuery()
#Set List Field Settings
$Field.Title= "Total Resources"
$Field.Description = "Number of Resources working on the Project"
#set default value
$Field.DefaultValue = "10"
$Field.EnforceUniqueValues = $False
#set field hidden
$Field.Hidden = $False
#set field required
$Field.Required = $True
$Field.FieldTypeKind = "Text"
$Field.Indexed = $False
#set field read only
#$Field.ReadOnlyField = $True
#Apply changes
$Field.Update()
$Ctx.ExecuteQuery()
Write-host "Field Settings Updated!"
PnP PowerShell เพื่ออัปเดตคุณสมบัติของฟิลด์ในรายการ SharePoint Online
ต่อไปนี้เป็นวิธีการเปลี่ยนการตั้งค่าฟิลด์สำหรับรายการ SharePoint Online โดยอัตโนมัติโดยใช้ PnP PowerShell:
#Config Variables
$SiteURL = "https://Crescent.sharepoint.com"
$ListName = "Team Projects"
$FieldName = "ProjectStatus" #Internal Name
#Get Credentials to connect
$Cred = Get-Credential
Try {
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Credentials $Cred
#Set Field Properties
Set-PnPField -List $ListName -Identity $FieldName -Values @{Required=$True;DefaultValue="Active"}
}
catch {
write-host "Error: $($_.Exception.Message)" -foregroundcolor Red
}
ในทำนองเดียวกัน คุณสามารถตั้งค่าคุณสมบัติอื่นๆ ของช่องรายการได้ เช่น "ชื่อ" หรือ "คำอธิบาย" เป็น:
-Values @{Title="Name of the Column";Description="Updated List Description"}
