sharepoint,powershell:比较csv列表并在列表中添加缺少的条目

时间:2017-03-17 06:24:42

标签: powershell sharepoint compare

我需要将сsv与列表进行比较,并将缺少的项目添加到列表中。仅从csv添加到列表中。

2 个答案:

答案 0 :(得分:0)

你可以做到。但是在SharePoint列表中没有ID以外的任何唯一列。您的CSV可能没有该ID。因此,您应该在CSV和SP列表中都有唯一的calue列。获取DataTable中CSV和SharePoint列表中的所有行,并比较两个DataTable以获取不同的值并在SP列表中上载这些行。

答案 1 :(得分:0)

我相信您的CSV中的数据与列表中的数据顺序相同,即您的CSV的第一行将与ID中的第一行数据进行比较,以ID降序排列。

在CSV标题名称中应与列表列相同。

导入CSV并遍历每一行,也分别获取listItems并比较列,如下所示:

 $SPWeb = Get-SPWeb http://mysharepoint.org
 $SPList = $SPWeb.Lists["My List"]

 $listItems = $SPList.GetItems()

 ##Import your CSV
 $csv = Import-Csv "D:\Test.csv"
 $counter=0

 foreach ($item in $csv)          
 {

     if( $listItems[$counter]["Column"] -ne $item.Column)
     {
       #Fetch that item by ID and Update
       $SPListItem = $SPList.GetItemByUniqueId($listItems[$counter]['ID'])
       $SPListItem["Column"] = $item.Column
       $SPListItem.Update()
       $counter=$counter+1

     }

}

我已经完成了一个列,可以为n列完成。

这是我的第一个答案,如果有效,请告诉我。)