Office 365 – PnP – Exporting sites with welcome pages not set to a page

Today I tried to export a site as a PnP template and I was getting an annoying error:

Get-PnPProvisioningTemplate : Cannot invoke method or retrieve property from null object. Object returned by the following call stack is null.

“ListItemAllFields

At D:\Temp\DMPowershell\GetPnPTemplateClients.ps1:9 char:1

+ Get-PnPProvisioningTemplate -Web $sourceWeb -Out “d:\Temp\DMPowershel …

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo          : WriteError: (:) [Get-PnPProvisioningTemplate], ServerException

+ FullyQualifiedErrorId : EXCEPTION,SharePointPnP.PowerShell.Commands.Provisioning.GetProvisioningTemplate

Quite quickly I found out that it had something to do with the Welcome Page. My page was set to:

https:/ /tenant.sharepoint.com/clients/Lists/ClientList/AllItems.aspx

Ah, that is a list view.

First I wasn’t sure what to do and I logged the issue on the pizzatech community site.

Then after the bi-weekly pizza Friday lunch we have at my work and I got my brain into gear, I found a good solution.

The Get-PnPProvisioningTemplate has an option to exclude Page contents. And as my site in this case doesn’t have any pages that are in use I could savely export my template using:

Get-PnPProvisioningTemplate … -ExcludeHandlers PageContents

The site is now exported while my welcome page is set to the list view.

 


Discover more from SharePains

Subscribe to get the latest posts sent to your email.

Avatar of Pieter Veenstra

Is your business still running on paper trails, sprawling Excel files, or ageing Access databases? There's a better way — and I can show you exactly what it looks like. I'm the Technical Director of Vantage 365, a Microsoft solutions consultancy working with clients across the UK, the Netherlands, and worldwide. For over 30 years I've been turning messy, manual business processes into clean, automated systems that save time, reduce errors, and give teams the visibility they need to make better decisions. SharePains is not just any blog run by a Microsoft MVP. Have you ever used Try-Catch in Power Automate? The original post about Try-Catch in Power Automate can still be found on this site, https://sharepains.com/2018/02/07/try-catch-finally-in-power-automate-flow/ Or have you ever used the Pieter’s method to avoid variables and speed up your flows? https://sharepains.com/2020/03/11/pieters-method-for-advanced-in-flows/ You can contact me using contact@sharepains.com

Avatar of Pieter Veenstra

Is your business still running on paper trails, sprawling Excel files, or ageing Access databases? There's a better way — and I can show you exactly what it looks like. I'm the Technical Director of Vantage 365, a Microsoft solutions consultancy working with clients across the UK, the Netherlands, and worldwide. For over 30 years I've been turning messy, manual business processes into clean, automated systems that save time, reduce errors, and give teams the visibility they need to make better decisions. SharePains is not just any blog run by a Microsoft MVP. Have you ever used Try-Catch in Power Automate? The original post about Try-Catch in Power Automate can still be found on this site, https://sharepains.com/2018/02/07/try-catch-finally-in-power-automate-flow/ Or have you ever used the Pieter’s method to avoid variables and speed up your flows? https://sharepains.com/2020/03/11/pieters-method-for-advanced-in-flows/ You can contact me using contact@sharepains.com

Related Posts

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from SharePains

Subscribe now to keep reading and get access to the full archive.

Continue reading