Git Product home page Git Product logo

pnpinventory's Introduction

PnP Inventory Scripts

I've been writing SharePoint inventory scripts for a minute, so I'm placing them here in github for your pleasure. There are not a lot of PnP inventory scripts out there, so these scripts will be exclusively built using PNP.

For more detail about this script, go here: http://erikboderek.net/2018/02/26/sharepointpnpinventory/

get-everyitemeveryfield.ps1

This script gets every field for every item everywhere. It's exhaustive. It does a pretty good job of getting Managed Metadata values too, but this can probably be tidied up a bit.

get-sitecollectioninventory

This script gets the item count and size of each list in every subsite. It also has timestamps and subsite level. When doing site inventories, I'd recommend using this script as it's less information to parse and is nicely summarized.

Requirements

You'll need to install PnP Powershell. Go here first: https://blog.kloud.com.au/2018/02/01/quick-start-guide-for-pnp-powershell/

Known Issues and Limitations

Limitations

A major limitation in all the scripts is as follows: Get-PNPSubwebs -Recurse fails when a web is a provider hosted app. For example, if you have Nintex for Office 365, PNP views it as a subsite, even though it appears in your Lists/Apps. I logged this as an issue - pnp/PnP-PowerShell#1490. This means the script cannot traverse all of the subsites effectively. There are clever ways around this, which I capture in my blog above. Until this is fixed, these scripts will do their best to inventory everything, but there are some caveats. I'll update as fixes or novel approaches become available.

Issues

In get-sitecollectioninventory the sitecollection title is null, but subsites are not.

pnpinventory's People

Contributors

erikboderek avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.