Добрый день.
Имеем следующий результат при выгрузке в CSV 4 значений из SP :
"RegData","podrazdelenieisp","ID","DataSozdani9"
"12/10/2018 12:00:00 AM","1;#????????","970","1/1/2018 12:00:00 AM"
"12/10/2018 12:00:00 AM","1;#Department","971","1/1/2018 12:00:00 AM"
...
Сам скрипт:
Add-PSSnapin microsoft.sharepoint.powershell
$weburl = "http://#####"
$site=(Get-SPSite -Identity $weburl)
$web=$site.RootWeb
$listName = "####"
$Department = 1
$list = $web.Lists[$listName]
$items = $list.Items
ForEach ($item in $items)
{
$a = $($item["Подразделение"])
$a = $a -replace ";.*"
If ($a -eq $Department)
{
$Output =New-Object -TypeName PSObject -Property @{
ID = $item.Id
podrazdelenieisp = $item["Подразделение Исполнителя"]
RegData = $item["Дата регистрации"]
DataSozdani9 = $item["Дата создания"]
}
$Output | export-csv C:\organization.csv -Append
}
}
Remove-PSSnapIn Microsoft.SharePoint.PowerShell
Провел следующие тесты:
1) Переменная c первой строкой внутри PS отображается корректно
2) При изменении места выгрузки csv результат не меняется
3) Пробовал исключать первый объект (If ($a -eq $Department -and $item.id -ne 970), но получал ту же ошибку уже с другим объектом на первой строчке
Если файл csv заранее подготовить (создать и разметить столбцы), то ошибки первой строки не будет. Но меня беспокоит такое поведение и хотелось бы выяснить причину.
Всем спасибо.