Buscar todas las listas que superen el umbral de búsqueda de vista de lista en SharePoint
Requisito:
La función de limitación de recursos en SharePoint controla el uso de recursos en SharePoint Farm para un uso óptimo. Mi requisito era encontrar todas las listas que excedieran el límite del umbral de búsqueda de vista de lista configurado en SharePoint.
Script de PowerShell para buscar todas las listas que superan el umbral de búsqueda de vista de lista:
Este script escanea todas las listas en la aplicación web y produce un archivo CSV con todos los nombres de lista, URL y columnas de búsqueda donde la lista excede el recuento máximo configurado en la configuración de limitación de la aplicación web en el sitio de administración central de SharePoint 2013.
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#Get the Web Application
$WebApp = Get-SPWebApplication "https://portal.crescent.com"
#Array to Hold Result - PSObjects
$ListResults = @()
#Get the Throttling Limit of the Web App
$Threshold = $WebApp.MaxQueryLookupFields
foreach($Site in $WebApp.Sites)
{
foreach($Web in $Site.AllWebs)
{
Write-host "Scanning site:"$Web.URL
foreach($List in $Web.Lists)
{
#Get Number of Lookup Fields
$LookupFields = $List.Fields | Where { $_.TypeDisplayName -eq "Lookup" -and $_.Hidden -eq $false}
if($LookupFields.Count -gt $Threshold)
{
$Result = New-Object PSObject
$Result | Add-Member NoteProperty Title($list.Title)
$Result | Add-Member NoteProperty URL($web.URL)
$Result | Add-Member NoteProperty Count($LookupFields.Count)
#Add the object with property to an Array
$ListResults += $Result
}
}
}
}
Write-host "Total Number of Lists Exceeding Lookup Threshold:"$ListResults.Count -f Green
#Export the result Array to CSV file
$ListResults | Export-CSV "c:\ListData.csv" -NoTypeInformation