Powershell export-csv 显示 System.Object[],"System.Object[]"

Powershell export-csv shows System.Object[],"System.Object[]"

我想将我的 powershell 脚本导出到 csv,只有在导出文件时,我在我的 csv 文件中得到 headers,但数据包含 systemobject。

#------- Opvragen token tiptrack -------
#Dit is de URL waar de token voor tiptrack wordt opgevraagd.
$Url_token="https://tiptracknext-staging-login.indicia.nl/oauth2/aus342go9hNphcHXM0i7/v1/token"

#Dit is de body die mee wordt gestuurd in de request, deze informatie staat gelijk aan de data in de post request vanuit de handleiding.
$Data_token = @{
grant_type="client_credentials"
client_id="123457"
client_secret="123456"
scope="eapi"
}

$token_tiptrack=Invoke-RestMethod -Method Post -Uri $Url_token -ContentType "application/x-www-form-urlencoded" -Body $Data_token

#------- Opvragen Employerbudgetsid -------
#Dti is de URL waarna de GET request wordt gestuurd om het employerid te kunnen.
$Url_budgetid='https://staging.tiptrack.nl/Tiptrack.Employer.Api/odata/EmployeeBudgets?$expand=Employee($expand=SecureEmployee)&$top=5'

#Dit is header die mee wordt gestuurd in de request. Deze data in deze header staat gelijk aan de data in de API handleiding.
$header_process = @{
Authorization='Bearer '+$token_tiptrack.access_token
"accept"="application/json"
}

#Vanuit het uploaden van het bestand krijgen we een reactie van de server, in deze reactie staat het upload id, deze id hebben we nodig om het bestand te kunnen verwerken. 
$data = Invoke-RestMethod -Uri $Url_budgetid -Method Get -Headers $header_process 


$exportdata = $data | 
    ForEach-Object { return [PSCustomObject]@{ 
        EmployeeNumber = $_.Value.Employee.SecureEmployee.EmployeeNumber;
        ComputedCurrentBalanceAmount =($_.Value.ComputedCurrentBalanceAmount) ;
        }  } 

$exportdata  | Select EmployeeNumber,ComputedCurrentBalanceAmount | Export-Csv C:\afas\test3.csv -NoTypeInformation

这是我想要的输出:

# EmployeeNumber,ComputedCurrentBalanceAmount
# EMP1,100,00
# EMP2,250,49
# EMP3,450,00 

提供的输出数据未列出 SecureEmployee 属性 的任何数据。因此,我假设您的代码中的 属性 层次结构是正确的。 Value 属性 包含您需要迭代的 Employee 对象数组。

$exportdata = $data.Value | ForEach-Object { 
    [PSCustomObject]@{ 
        EmployeeNumber = $_.Employee.SecureEmployee.EmployeeNumber
        ComputedCurrentBalanceAmount = $_.ComputedCurrentBalanceAmount
    }
} 

$exportdata | Export-Csv C:\afas\test3.csv -NoTypeInformation