Create Result source using Power Shell SP2013 Search service


Add-PSSnapin Microsoft.SharePoint.PowerShell

$ssa = Get-SPEnterpriseSearchServiceApplication
$fedman = New-Object Microsoft.Office.Server.Search.Administration.Query.FederationManager($ssa)

$searchOwner = Get-SPEnterpriseSearchOwner -Level Ssa

# define query
$query = '{searchTerms} path:"http://hmecd000125v:8014/sites/MobileApp/Lists/Residential Property" (contentclass:STS_List)" (contentclass:STS_List) IsActive:True'
$queryProperties = New-Object Microsoft.Office.Server.Search.Query.Rules.QueryTransformProperties


# create result source
$resultSource = $fedManager.CreateSource($searchOwner)
$resultSource.Name = 'SampleResidential1'
$resultSource.ProviderId = $fedManager.ListProviders()['Local SharePoint Provider'].Id
$resultSource.CreateQueryTransform($queryProperties, $query)
$resultSource.Commit()


Delete All items in List

write-host "This will delete data, type YES to continue"
$retval = read-host
if ($retval -ne "YES")
{
    write-host "exiting - you did not type yes" -foregroundcolor green
    exit
}
write-host "continuing"

$web = get-spweb http://hmecd000124v:35671/sites/Aldar
$list = $web.lists | where {$_.title -eq "Mobile Service Log List"}
Write-host "List $($list.title) has $($list.items.count) entries"
$items = $list.items
foreach ($item in $items)
{
    Write-host "  Say Goodbye to $($item.id)" -foregroundcolor red
    $list.getitembyid($Item.id).Delete()
    }

Add required field validation 

add-pssnapin microsoft.sharepoint.powershell

#To which site u want to create the list
$spWeb=Get-SPWeb -Identity http://hmecd000124v:17998/sites/Aldar/
$spList = $spWeb.GetList("http://hmecd000124v:17998/sites/Aldar/Lists/Test")
$field = $splist.Fields.getFieldbyInternalName("test")
$field.Required = $true
$field.Update()
#$web.Dispose()

Comments

Popular posts from this blog

Sites.Selected | Graph API SharePoint Permission

Configure the SharePoint Online App Catalog

Azure Function | Sharepoint List item | Call from Power Automate Flow