Импорт данных из XML файла в список SharePoint с помощью PowerShell
Появилась задача загрузить данные из файла XML в список SharePoint 2010. XML имеет следующую структуру:
В SharePoint 2010 заранее создал список — Список пользователей, с соответствующими полями. Вот скрипт на PowerShell, который возьмет данные из файла XML и загурузит в список SharePoint:
if(!(Get-PSSnapin Microsoft.SharePoint.Powershell -ErrorAction:SilentlyContinue)) { Add-PSSnapin Microsoft.SharePoint.Powershell #Set these two variables accordingly $WebURL = “http://portal.contoso.com/” $ListName = "Список пользователей" $XMLFilePath = "C:\scripts\xml\test.xml" #Get the Web $web = Get-SPWeb $WebURL #Get the List $ProjectList = $web.Lists[$ListName] #import xml file [*xml]$ProjectXmlFile = Get-Content $XMLFilePath foreach ($XMLProject in $ProjectXmlFile.domainusers.user) { $NewProject = $ProjectList.Items.Add() $NewProject["ФИО"] = $XMLProject.ФИО $NewProject["Отдел"] = $XMLProject.Отдел $NewProject["Должность"] = $XMLProject.Должность $NewProject["Комната"] = $XMLProject.Комната $NewProject["Рабочий телефон"] = $XMLProject.Телефон $NewProject["Адрес электронной почты"] = $XMLProject.Почта $NewProject.Update() Write-Host "Project $($XMLProject.ФИО) has been Added to External Projects list!" }
* в коде есть место — [*xml], так звездочку нужно удалить.
Это скрипт подойдет только для разовой загрузки данных, т.к. скрипт не заменяет данные в списке SharePoint, а еще раз их туда запишет, если его повторно запустить. Т.е. в списке будет две Ивановой, и две Соколовой.
Нашли опечатку в тексте? Пожалуйста, выделите ее и нажмите Ctrl+Enter! Спасибо!
Хотите поблагодарить автора за эту заметку? Вы можете это сделать!
Пытаюсь загрузить в список SharePoint данные из этого XML www.cbr.ru/scripts/XML_da...e_req=23/01/2015, но не получается, видимо стоят пробелы в тэгах, типа Value ID, как с этим быть? Помоги, жду ответа на melwin@mail.ru Спасибо.
Михаил
23 Янв 2015 в 20:07
Пользуюсь скриптом, наткнулся на такую проблему загрузки данных по датам, т.е. мне нужно перезписывать данные если даты совподают. Можете чем помочь? жду отвта на почту fox8791@mail.ru
Куаныш
15 Апр 2015 в 15:56