Во-первых, вы должны вывести $filterDate
из цикла, во-вторых, вы НИКОГДА не должны использовать Format-Table и АБСОЛЮТНО НИКОГДА в цикле.
Попробуйте это:
$filterDate = [datetime]::Today.AddDays(-22)
$Prids = get-content -Path C:\Temp\sqltest.txt
$Result = foreach ($prid in $prids){
Get-CdPac2000Problems -PId $Prid | Where-Object {(Get-Date $_.ClosedDate.Date) -ge $filterDate}
}
$Result | Format-Table PID,ClosedDate,ClosedByELID,ResponsibleGroup,ReferredDate -autosize
Одна из самых красивых вещей в PowerShell - это то, что вы можете напрямую взаимодействовать со всеми объектами.Все методы и свойства сохраняются при передаче объектов в переменную или в следующую команду в конвейере.Format-Table преобразует объекты в таблицу - что-то удобочитаемое для человека и что-то лишенное методов и жизни.