How to set Document Set Welcome page view property via powershell

Hi all,

I am trying to set Document Set's Welcome page view dropdown with my custom view via Powershell. However, below code seems be not working. Anybody have any workaround? $xmldoc.Contains("WelcomePageView")) xmldoc object do not contain "WelcomePageview".

function SetWelcomePageView()
{
$contenttype=$lib.ContentTypes["DocumentIT"]
$viewid = $lib.Views["zzzDocSetView"].Id
$xmldocs = $contenttype.XmlDocuments
Write-Host $xmldocs
foreach($xmldoc in $xmldocs)
{
	if($xmldoc.Contains("WelcomePageView"))
	{
		Write-Host "XML contains WPV"  
        $newview =  [XML] @"
<wpv:WelcomePageView xmlns:wpv="http://schemas.microsoft.com/office/documentsets/welcomepageview" ViewId="$viewid" />
"@
		$xmldocs.Delete("http://schemas.microsoft.com/office/documentsets/welcomepageview")
		$xmldocs.Add($newview)
		break;
	}
}
$contenttype.Update($updateChildren, $false)
Write-Host "Welcome Page View updated at " $list.Title
}

September 2nd, 2015 4:20am

This is a function... you are calling the function, right?

As in..  after the last } you have:

SetWelcomePageView


Free Windows Admin Tool Kit Click here and download it now
September 2nd, 2015 8:36am

Hi,

Please make sure the "DocumentID" is a document set content type. The following code working in my test environment.

$web = Get-SPWeb "http://sp2013sps:8080"
$list = $web.Lists["Documents"]   
$contenttype = $list.ContentTypes["Document Set"]     
$viewid = $list.Views["zzzDocSetView"].Id
$xmldocs = $contenttype.XmlDocuments
foreach($xmldoc in $xmldocs)
{
	if($xmldoc.Contains("WelcomePageView"))
	{
		Write-Host "XML contains WPV"  
        $newview =  [XML] @"
<wpv:WelcomePageView xmlns:wpv="http://schemas.microsoft.com/office/documentsets/welcomepageview" ViewId="$viewid" />
"@
		$xmldocs.Delete("http://schemas.microsoft.com/office/documentsets/welcomepageview")
		$xmldocs.Add($newview)
		break;
	}
}
$contenttype.Update($updateChildren, $false)

Best Regards,

Dennis

September 3rd, 2015 3:26am

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics