รับเขตข้อมูลรายการทั้งหมดใน SharePoint Online โดยใช้ PnP PowerShell
เมื่อเร็วๆ นี้ ลูกค้ารายหนึ่งของฉันต้องการแสดงรายการชื่อคอลัมน์ทั้งหมดจากรายการ SharePoint Online ฉันลองใช้ PnP PowerShell เพื่อทำ ในบทช่วยสอนนี้ ฉันจะอธิบายวิธีรับเขตข้อมูลรายการทั้งหมดใน SharePoint Online โดยใช้ PnP PowerShell
ฉันจะแสดงให้คุณเห็นวิธีการรับคอลัมน์รายการทั้งหมด รวมถึงคอลัมน์สำเร็จรูปและคอลัมน์แบบกำหนดเอง จากรายการ SharePoint Online หรือไลบรารีเอกสาร
รับเขตข้อมูลรายการทั้งหมดใน SharePoint Online โดยใช้ PnP PowerShell
ที่นี่ ฉันมีรายการ SharePoint ที่มีสองสามคอลัมน์ คุณสามารถดูผลลัพธ์ได้ในภาพหน้าจอด้านล่าง:
หากต้องการรับชื่อคอลัมน์ทั้งหมดจากรายการเฉพาะในไซต์ SharePoint Online ให้ใช้ Get-PnPField cmdlet
$siteUrl = "https://szg52.sharepoint.com/sites/PowerShellFAQs"
Connect-PnPOnline -Url $siteUrl -Interactive
$listName = "Employee Onboarding"
$fields = Get-PnPField -List $listName
foreach ($field in $fields) {
Write-Host "Field Title: $($field.Title) - Internal Name: $($field.InternalName) - Type: $($field.TypeAsString)"
}
หลังจากที่คุณรันสคริปต์ PowerShell ข้างต้น คุณสามารถดูรายการคอลัมน์จากรายการ SharePoint Online นอกจากนี้ยังรวมถึงคอลัมน์ที่ซ่อน คอลัมน์ที่กำหนดเอง และคอลัมน์สำเร็จรูปทั้งหมดด้วย ตรวจสอบภาพหน้าจอด้านล่างสำหรับการอ้างอิงของคุณ
รับคอลัมน์แบบกำหนดเองจากรายการ SharePoint โดยใช้ PnP PowerShell
บางครั้ง คุณอาจต้องการรับคอลัมน์แบบกำหนดเองจากรายการ SharePoint Online โดยใช้ PnP PowerShell
นี่คือสคริปต์ PowerShell ที่สมบูรณ์
$siteUrl = "https://szg52.sharepoint.com/sites/PowerShellFAQs"
Connect-PnPOnline -Url $siteUrl -Interactive
$listName = "Employee Onboarding"
$fields = Get-PnPField -List $listName
$customFields = $fields | Where-Object { $_.CanBeDeleted -eq $true }
foreach ($field in $customFields) {
Write-Host "Custom Field Title: $($field.Title) - Internal Name: $($field.InternalName) - Type: $($field.TypeAsString)"
}ฉันรันสคริปต์ข้างต้น คุณสามารถดูผลลัพธ์ได้ในภาพหน้าจอด้านล่าง โดยจะแสดงคอลัมน์แบบกำหนดเองทั้งหมดจากรายการ SharePoint Online
รับคอลัมน์ที่พร้อมใช้งานทันทีจากรายการ SharePoint โดยใช้ PnP PowerShell
ตอนนี้ถึงเวลาที่จะแสดงให้คุณเห็นวิธีการใช้คอลัมน์แบบสำเร็จรูปจากรายการ SharePoint Online โดยใช้ PnP PowerShell
นี่คือ PnP PowerShell ที่สมบูรณ์
$siteUrl = "https://szg52.sharepoint.com/sites/PowerShellFAQs"
Connect-PnPOnline -Url $siteUrl -Interactive
$listName = "Employee Onboarding"
$fields = Get-PnPField -List $listName
$ootbFields = $fields | Where-Object { $_.CanBeDeleted -eq $false }
foreach ($field in $ootbFields) {
Write-Host "OOTB Field Title: $($field.Title) - Internal Name: $($field.InternalName) - Type: $($field.TypeAsString)"
}คุณสามารถดูผลลัพธ์ได้ในภาพหน้าจอด้านล่าง:
นี่คือสคริปต์ที่สมบูรณ์สำหรับตัวอย่างทั้งหมดข้างต้น
$siteUrl = "https://szg52.sharepoint.com/sites/PowerShellFAQs"Connect-PnPOnline -Url $siteUrl -Interactive$listName = "Employee Onboarding"
# Retrieve all fields
$fields = Get-PnPField -List $listName
# Display all fields
Write-Host "All Fields:"
foreach ($field in $fields) {
Write-Host "Field Title: $($field.Title) - Internal Name: $($field.InternalName) - Type: $($field.TypeAsString)"
}
# Retrieve custom fields
$customFields = $fields | Where-Object { $_.CanBeDeleted -eq $true }
Write-Host "`nCustom Fields:"
foreach ($field in $customFields) {
Write-Host "Custom Field Title: $($field.Title) - Internal Name: $($field.InternalName) - Type: $($field.TypeAsString)"
}
# Retrieve out-of-the-box fields
$ootbFields = $fields | Where-Object { $_.CanBeDeleted -eq $false }
Write-Host "`nOOTB Fields:"
foreach ($field in $ootbFields) {
Write-Host "OOTB Field Title: $($field.Title) - Internal Name: $($field.InternalName) - Type: $($field.TypeAsString)"
}บทสรุป
ในบทช่วยสอนนี้ ฉันได้อธิบายวิธีใช้ PnP PowerShell เพื่อดึงชื่อคอลัมน์ทั้งหมดจากรายการ SharePoint Online รวมถึงคอลัมน์แบบกำหนดเองและคอลัมน์สำเร็จรูป



