none
Erstellen von Dokumentenmappe per PowerShell RRS feed

  • Frage

  • Hallo Zusammen,

    ich versuche per PowerShell eine neue Dokumentenmappe zu erstellen.

    Bekomme aber immer folgende Fehlermeldung:

    Für "Create" und die folgende Argumenteanzahl kann keine Überladung gefunden werden: "4".
    In Zeile:27 Zeichen:2

    Hier das entsprechende Skript

    $ErrorActionPreference = "Stop"
    $ver = $host | select version 
    if($Ver.version.major -gt 1) {$Host.Runspace.ThreadOptions = "ReuseThread"} 
    if(!(Get-PSSnapin Microsoft.SharePoint.PowerShell -ea 0)) 
    { 
    Write-Progress -Activity "Loading Modules" -Status "Loading Microsoft.SharePoint.PowerShell" 
    Add-PSSnapin Microsoft.SharePoint.PowerShell 
    } 
     
    $DestinationWebURL = "https://123.abc.de/websites/kd" 
    $DestinationLibraryTitle = "Kunden" 
    $docSetInfos = Import-CSV "D:\Temp\Kunden.csv" -Header KTNummer,Kundenname
    
    $dWeb = Get-SPWeb $DestinationWebURL 
    $dList = $dWeb.Lists | ? {$_.title -like $DestinationLibraryTitle} 
    
    $cType = $dList.ContentTypes["My Custom Document Set Content Type"] 
    
    foreach($docSetInfo in $docSetInfos) 
    { 
    	#Build properties hash table from $docSetInfos[]
    	[Hashtable]$docsetProperties = @{}
    		
    	$docsetProperties.Add('Kundenname',$docSetInfo.Kundenname)
    	$docsetProperties.Add('KTNummer',$docSetInfo.KTNummer)
    								
    	$NewFolder = [Microsoft.Office.DocumentManagement.DocumentSets.DocumentSet]::Create($dlist.RootFolder,$docSetInfo.KTNummer,$cType.Id, $docsetProperties)
    }

    Hat jemand eine Idee?

    Gruß Korbinian


    Freitag, 17. März 2017 09:02

Antworten

  • Erstmal danke für die Info.

    $DestinationWebURL = "https://123.abc.de/websites/kd" 
    $DestinationLibraryTitle = "Dokumentation" 
    $docSetInfos = Import-CSV D:\Temp\Kunden.csv -Header KT-Nummer,Kundenname
    
    $dWeb = Get-SPWeb $DestinationWebURL 
    $dList = $dWeb.Lists | ? {$_.title -like $DestinationLibraryTitle} 

    bis hier funktioniert alles

    $cType = $dList.ContentTypes["Dokumentenmappe"]

    Bei dieser Zeile ist $cType dann leer.

    • Als Antwort markiert korbinianotto Montag, 20. März 2017 10:49
    Montag, 20. März 2017 07:49

Alle Antworten

  • Hi Korbinian,
    um einen Ordner anzulegen, muss im übergeordneten Ordner der Folders-Eigenschaft ein Ordner hinzugefügt (Add) werden. Wenn der Ordner in der Liste/Bibliothek erstellt werden soll, dann ist die RootFolder-Eigenschaft der Liste/Bibliothek zu nutzen, z.B. so:

    $DestinationWebURL = "http://sps2013.lg.loc" 
    $DestinationLibraryTitle = "Dokumente" 
    
    $dWeb = Get-SPWeb $DestinationWebURL 
    $dList = $dWeb.Lists | ? {$_.title -like $DestinationLibraryTitle} 
    
    $dList.RootFolder.SubFolders.Add("NeuerOrdner")

    Wenn beim Anlegen einer Dokumentenmappe "keine Überladung gefunden werden: ..." kommt, dann ist einer der Parameter falsch. Ich vermute die $cType.Id. Lass Dir diese mal anzeigen.


    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks


    Samstag, 18. März 2017 14:23
  • Erstmal danke für die Info.

    $DestinationWebURL = "https://123.abc.de/websites/kd" 
    $DestinationLibraryTitle = "Dokumentation" 
    $docSetInfos = Import-CSV D:\Temp\Kunden.csv -Header KT-Nummer,Kundenname
    
    $dWeb = Get-SPWeb $DestinationWebURL 
    $dList = $dWeb.Lists | ? {$_.title -like $DestinationLibraryTitle} 

    bis hier funktioniert alles

    $cType = $dList.ContentTypes["Dokumentenmappe"]

    Bei dieser Zeile ist $cType dann leer.

    • Als Antwort markiert korbinianotto Montag, 20. März 2017 10:49
    Montag, 20. März 2017 07:49
  • Hi,
    wenn $cType leer ist, dann gibt es keinen Inhaltstyp "Dokumentenmappe" in der Bibliothek/Liste. Heißt dieser Inhaltstyp vielleicht "Document Set" und wurde er auch der Bibliothek/Liste zugeordnet?

    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks

    Montag, 20. März 2017 10:48
  • Danke jetzt hat es sich geklärt, ich hatte zusätzlich noch einen Schreibfehler drin. Jetzt funktioniert die Erstellung.
    Montag, 20. März 2017 10:49