Expanding arrays when exporting to CSV

I’m running some Citrix powershell commands that output arrays of objects. They look right on the screen, but when I output to CSV, it shows the object type. I’ve looked around, and I haven’t found a good answer on how to expand this – especially because some of the properties are not arrays, and some are.

Get-XAApplication | foreach {Get-XAApplicationReport -BrowserName $_.Browsername} | Select-Object DisplayName,Accounts,ServerNames

The output comes out like this on the screen:

DisplayName                            Accounts                            ServerNames -----------                            --------                               ----------- Notepad                                {Domain\Domain Users, Domain\Domain Ad... {Server1, Server2, Server3... Word 2010                              {Domain\Domain Users, SWRCU\Domain Ad... {Server1, Server2, Server3...

The Accounts & Servernames are arrays.

I am trying to do this:

Get-XAApplication | foreach {Get-XAApplicationReport -BrowserName $_.Browsername} | Select-Object DisplayName,Accounts,ServerNames | export-csv -path c:\temp\AppReport.csv

I get this in the CSV file:

#TYPE Selected.Citrix.XenApp.Commands.XAApplicationReport "DisplayName","Accounts","ServerNames" "Notepad","Citrix.XenApp.Commands.XAAccount[]","System.String[]" "Word 2010","Citrix.XenApp.Commands.XAAccount[]","System.String[]"

I’m primarily concerned with the correct technique to expand those arrays in the CSV file.

Thank you for any help.

David F.

Er, no. CSV is a flat format - it just isn’t designed for a hierarchy. You’d have to do something manual, so expanding out the collections into whatever simple string you wanted, and then send it to CSV. XML is better designed for what you’re doing.

And that’s the part I want to do :-) I want to somehow expand those objects manually to get them added to the text file. I’ve got other utilities written to take advantage of the flat data (they are written in Winbatch). The end-goal is to get them into a table format.

I can start tinkering with the XML commands.



David F.