Dieser Beitrag, ist eine Ergänzung zu dem Beitrag SharePoint Dokumente unwissentlich ausgecheckt, in dem beschrieben ist, wie über das SharePoint Server Objekt Model alle ausgecheckten Dokumente einer WebApplikation ausgelesen werden können. In diesem Beitrag geht es darum, in SharePoint ausgecheckte Dokumente mit Hilfe von PnP und CSOM (Client Side Object Model) aufzulisten.
PnP installation
Um das Skript zu verwenden, installieren wir zuerst das PnP Modul. Dies geht mit folgendem Befehl:
Install-Module -Name SharePointPnPPowerShellOnline
Weitere Informationen dazu findest du hier.
Script
Ich verwende hier PnP, dadurch erleichtert sich die Anmeldung am SharePoint erheblich. Je nachdem ob es sich um SP OnPrem oder SP Online handelt, gibt es bei CSOM unterschiedliche Methoden, um sich anzumelden. Dies fällt bei PnP weg. Mit PnP kann einfach:
Connect-PnPOnline -Url $webUrl -Credentials $cred
ausgeführt werden und es wird automatisch die richtige Methode verwendet.
Da man Tenant-Admin sein muss, um alle Sites in einem Tenant auszulesen und die meisten diese Rechte nicht besitzen, habe ich mich dazu entschlossen nur eine Site zu durchsuchen.
Mit Hilfe von
$startWeb = Get-PnPWeb
ladet man das aktuelle Web. Von diesem können dann durch
$webs = Get-PnPSubWebs
alle Subwebs geladen werden.
Für jedes dieser Webs, muss man jede Dokumentenbibliothek durchgehen
$lists = Get-PnPLIst -Web $web -Includes {RootFolder.ServerRelativeUrl} | ? { $_.BaseType -eq "DocumentLibrary" }
und dort dann überprüfen ob bei einem File der CheckOutType ungleich „None“ ist.
Ist dies der Fall, schreibe ich mir die benötigten Daten des Files in ein Array.
Nachdem das Skript alle Webs und Dokumentenbibliotheken durchgegangen ist, erstellt es für jeden Eintrag in dem Array ein neues Item und schreibt es in die Zusammenfassungsliste, welche anschließend einen guten Überblick über alle ausgecheckten Dokumente in diesem Web gibt.
Das vollständige Skript findet ihr wieder hier.
Ich hoffe ich konnte dir weiterhelfen wie du in SharePoint ausgecheckte Dokumente mit CSOM ausfindig machen kannst.
Hast du eine Frage, dann hinterlasse einen Kommentar oder schreib mir einfach eine Mail.
Ich freue mich darauf dir weiterzuhelfen, damit auch du und deine User SharePoint lieben!