Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SharePoint列表未通过PowerShell更新_Powershell_Sharepoint_Sharepoint 2010_Sharepoint 2007_Powershell Ise - Fatal编程技术网

SharePoint列表未通过PowerShell更新

SharePoint列表未通过PowerShell更新,powershell,sharepoint,sharepoint-2010,sharepoint-2007,powershell-ise,Powershell,Sharepoint,Sharepoint 2010,Sharepoint 2007,Powershell Ise,我当前正在尝试使用lists.asmx更新SharePoint列表。不幸的是,我不能使用CSOM,因为这将作为批处理文件传递给非技术人员。在向列表中添加新项目时,我可以使用它,但如果我修改代码以更新列表中的项目,则所有项目都不会更新 代码如下: # Connect to web service $uri = "http://teams.COMPANY.intranet/_vti_bin/lists.asmx" $service = New-WebServiceProxy -uri $uri -N

我当前正在尝试使用lists.asmx更新SharePoint列表。不幸的是,我不能使用CSOM,因为这将作为批处理文件传递给非技术人员。在向列表中添加新项目时,我可以使用它,但如果我修改代码以更新列表中的项目,则所有项目都不会更新

代码如下:

# Connect to web service
$uri = "http://teams.COMPANY.intranet/_vti_bin/lists.asmx"
$service = New-WebServiceProxy -uri $uri -Namespace SpWs  -UseDefaultCredential # -credential $credential
$service.url = "http://home.COMPANY.intranet/sites/Sharepoint/_vti_bin/lists.asmx"
$xmlDoc = new-object System.Xml.XmlDocument            
$listName = "MapDetails"  
$viewFields = $xmlDoc.CreateElement("ViewFields")
$query = $xmlDoc.CreateElement("Query")          

# Get name attribute values (guids) for list and view            
$ndlistview = $service.getlistandview($listname, "")            
$strlistid = $ndlistview.childnodes.item(0).name            
$strviewid = $ndlistview.childnodes.item(1).name            


# Create an xmldocument object and construct a batch element and its attributes.   

$xmldoc = new-object system.xml.xmldocument             

# note that an empty viewname parameter causes the method to use the default view               
$batchelement = $xmldoc.createelement("Batch")            
$batchelement.setattribute("onerror", "continue")            
$batchelement.setattribute("listversion", "1")            
$batchelement.setattribute("viewname", $strviewid)            

$id = 1                               
$xml = ""            

# The row to be modified            
$rowId = 0

$Files=GET-CHILDITEM '\\Client.COMPANY.com\Homeshare\HOME0029\USER\My Documents\WebTrends Global Adoption\Output\*.txt' | Sort-Object 

Foreach ($File in $Files) {

    $fullName = $File.BaseName
    $content = Get-Content $File

    $xml = "<Method ID='$id' Cmd='Update'>" +

  "<Field Name='ID'>$rowId</Field>" +

  "<Field Name='Title'>$fullName</Field>" +

  "<Field Name='LocationDetails'><![CDATA[$content]]></Field></Method>"

    # Set the xml content                    
    $batchelement.innerxml = $xml            

    $ndreturn = $null  

    $ndreturn = $service.updatelistitems($listname, $batchelement)

    $rowId++
}
#连接到web服务
$uri=”http://teams.COMPANY.intranet/_vti_bin/lists.asmx"
$service=newWebServiceProxy-uri$uri-Namespace SpWs-UseDefaultCredential#-credential$credential
$service.url=”http://home.COMPANY.intranet/sites/Sharepoint/_vti_bin/lists.asmx"
$xmlDoc=new object System.Xml.XmlDocument
$listName=“MapDetails”
$viewFields=$xmlDoc.CreateElement(“viewFields”)
$query=$xmlDoc.CreateElement(“查询”)
#获取列表和视图的名称属性值(GUID)
$ndlistview=$service.getlistandview($listname,“”)
$strlistid=$ndlistview.childnodes.item(0).name
$strviewid=$ndlistview.childnodes.item(1).name
#创建一个xmldocument对象并构造一个批处理元素及其属性。
$xmldoc=new object system.xml.xmldocument
#请注意,空viewname参数会导致该方法使用默认视图
$batchelement=$xmldoc.createelement(“批处理”)
$batchelement.setattribute(“onerror”、“continue”)
$batchelement.setattribute(“listversion”、“1”)
$batchelement.setattribute(“视图名称”、$strviewid)
$id=1
$xml=“”
#要修改的行
$rowId=0
$Files=GET-CHILDITEM'\\Client.COMPANY.com\Homeshare\HOME0029\USER\My Documents\WebTrends Global Adoption\Output\*.txt'|排序对象
Foreach($Files中的文件){
$fullName=$File.BaseName
$content=获取内容$File
$xml=“”+
“$rowId”+
“$fullName”+
""
#设置xml内容
$batchelement.innerxml=$xml
$ndreturn=$null
$ndreturn=$service.updatelistitems($listname,$batchelement)
$rowId++
}
我在网上搜寻了一个解决方案,但似乎找不到有同样问题的人。也许我只是太傻了。如果这个问题以前已经发布过,请随时为我指出正确的方向


谢谢

我确信没有
***Update***
cmd…我的错,实际的代码是“Update”,我把它们放在它周围以突出显示该区域,忘记了它在代码块中不起作用。