none
Powershell in CSV, alles eine Spalte?, Problem mit einer bestimmten Spalten-Darstellung RRS feed

  • Frage

  • Hallo Gemeinde,

    ich habe ein script gebastelt welches mir aus einem Sharepoint alle Seiten/Listen/Ordner/Elemente und deren unique berichtigung in einer Excel-Tabelle darstellt. Allerdings habe ich da ein Optisches Problem.

    Folgendes als beispiel in einer foreach schleife aus meinem script

    $resultproperties=@{Member='-';Role='-';webTitle='-';WebURL='-';listTitle='-';listURL='-';};

    if (($list.HasUniqueRoleAssignments) -and ($list.Hidden -eq $false)) { Write-Host "`r###" "Durchsuche Liste $listcnt... " -foregroundcolor "White" -NoNewLine $result = New-Object -TypeName PSObject -Property $resultproperties; $result.Member= $list.RoleAssignments | select member $result.Role= $list.RoleAssignments | select RoleDefinitionBindings $result.listTitle= "$($list.Title)" $result.listURL="$($list)" $result | Format-Table webTitle,WebURL,listTitle,listURL,Member,Role | Out-String -Width 200 | Out-File UniquePermissions.csv -Append }

    ausehen in Excel tut es momentan so: http://i.imgur.com/6vhwit3.png

    Ich hätte das aber gerne so: http://i.imgur.com/hpjJxbj.png

    Weis auch noch nicht ganz warum das alles in einer Spalte steht, hoffe mir kann einer von euch Helfen :)

    Danke und Gruß, Christian Z.




    • Bearbeitet ChaOS2307 Donnerstag, 4. Dezember 2014 07:50
    Mittwoch, 3. Dezember 2014 14:59

Antworten

Alle Antworten

  • Hallo Christian,

    ich habe keine große Erfahrung mit PowerShell, aber Sie sollen sich besser dieses Teil Ihres Scripts ansehen:

    $resultproperties=@{Member='-';Role='-';webTitle='-';WebURL='-';listTitle='-';listURL='-';};

    Ich vermute, dass die Syntax nicht richtig ist. Ich habe ähnliche Scripts analysiert und ich habe folgendes gemerkt:   

    $collection = @() 
    foreach ($profile in $profiles) { 
      
       $profileData = "" |  
       select "AccountName", "PreferredName" , "Department" , "Manager" , "Office" , "Location" , "WorkEmail" , "Assistant" , "AboutMe" , "Language" , "PictureURL" , "Role" 
    

    ,

    $SPWeb = Get-SPWeb “http://mySite:80″
     $SPList = $SPWeb.Lists[“Employee”]
     $exportlist = @()
     $SPList.Items | foreach {
     $obj = New-Object PSObject -Property @{
     ####”CSV Column Name” – “SharePoint List Column”
     “Title” = $_[“Title”]
    “Name” = $_[“Name”]
     }
     $exportlist += $obj
     $exportlist | Export-Csv -path ‘C:\MyList.csv’ -noType
     }
     $SPWeb.Dispose()

    Grüße,

    Teodora


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Donnerstag, 4. Dezember 2014 14:42
    Moderator
  • Hallo ChaOS2307,

    unter [1] finden Sie eine Ressource, wie man programmiertechnisch dies steuert. In Ihrem Skript müssen Sie das Format der Eingangsdaten anpassen, um diese in Spalten zu bekommen. Zusätzlich müssen Sie auch den Out-String Parameter entfernen, da dies die Ausgabe aufsummiert und als einen Eintrag anzeigt. Mehr Informationen darüber finden Sie unter [2].

    [1] http://technet.microsoft.com/de-de/library/ee692794.aspx
    [2] http://technet.microsoft.com/de-de/library/hh849952.aspx

    Viele Grüße
    Hristo Valev     
    Entwickler-Hotline für MSDN Online Deutschland

    Disclaimer:
    Bitte haben Sie Verständnis dafür, dass wir hier auf Rückfragen gar nicht oder nur sehr zeitverzögert antworten können.
    Bitte nutzen Sie für Rückfragen oder neue Fragen den telefonischen Weg über die MSDN-Entwickler-Hotline: http://www.msdn-online.de/Hotline
    MSDN-Entwickler-Hotline: Schnelle & kompetente Hilfe für Entwickler: kostenfrei!

    Es gelten für die MSDN-Entwickler-Hotline und dieses Posting diese Nutzungsbedingungen, Hinweise zu Markenzeichen, Informationen zur Datensicherheit sowie die gesonderten Nutzungsbedingungen für die MSDN-Entwickler-Hotline.

    Donnerstag, 4. Dezember 2014 14:56