문제

In this script, i want to to copy an item from list to another list. This item contain an attachments. How i can add the attachments to my code

$web = Get-SPWeb http://intranet/sales/
$listSales = $web.Lists["Sales Projects"]


$Prospect = Get-SPWeb http://intranet/CAC/
$listProspect = $Prospect.Lists["Clients"]


foreach ($item in $listSales.Items | Where {$_["Status"] -eq "Confirmed" -and $_["isDone"] -eq $null}) { 

    Write-Host $item.Title

      $newItem = $listProspect.Items.Add();


      $newItem["Client's Name"] = $item["Client Name"]
      $newItem["Initiator"] = $item["Initiator"]


      $newItem.Update()


      $item["isDone"]="Done"
      $item.Update()
}
도움이 되었습니까?

해결책

You can do it with following code:

foreach ($AttachName in $item.Attachments) 
{
    $spFile = $item.ParentList.ParentWeb.GetFile($item.Attachments.UrlPrefix + $AttachName);
    $newItem.Attachments.Add($AttachName, $spFile.OpenBinary());
}

Put that code after this line: $newItem["Initiator"] = $item["Initiator"] and it should be fine.

다른 팁

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 sharepoint.stackexchange
scroll top