2012-01-24 8 views
2

リストからデータを取得するために、以下のスクリプトを使用しようとしています。 私はSp 2007のためにそれを使用していますが、それは働いていますが、SP 2010の下でそれを使用するとエラーが発生します。 アイデア おかげSharepoint 2010でnullのarray.errorにインデックスできません

Cannot index into a null array. 
At \64284ccd-adc9-4ae4-be4c-0fcd744be7c1.ps1:12 char:19 
+  Title = $item[ <<<< "Title"] 
    + CategoryInfo   : InvalidOperation: (Title:String) [], RuntimeException 
    + FullyQualifiedErrorId : NullArray 



[System.reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint") 
$site =  new-object Microsoft.SharePoint.SPSite("http://mysite/Intranet")              

$web  = $site.rootweb                        
$list = $web.Lists["Comms"] 

$Responses = @() 


foreach ($item in $list.items) { 
#$list.Items | foreach { 
$obj = New-Object PSObject -Property @{ 
    Title = $item["Title"] 

} 
$obj |select-object Title 
$Responses += $obj 
} 
Write-Host $Response 
+0

$ list.items.Countとは何ですか? –

答えて

1

デバッグPowerShellは、一般的に、中間変数の値を検査することを含みます。この場合、$ itemがnullであることはエラーから明らかです。おそらく$ list.itemsが$ nullであることを意味します。これは、itemsプロパティがnullか、$ listがnullである可能性が高いことを意味します。 $ listがnullの場合は、$list -eq $nullのようにチェックできます。 nullの場合は、$ web変数がnullでないことを確認してください。そうでない場合は、$web.ListsのようなWebリストを列挙して、 "Comms"が表示されているかどうかを確認します。

+0

+1:私も助けました – Divi

関連する問題