Я думаю, вам нужно указать индекс / числовое значение для выбора. Смотрите сообщение в блоге здесь .
Как уже упоминалось, вы можете сделать:
$item["Overdue"] = 0; #assuming 0 == YES
Или
$item["Overdue"] = $list.Fields["Overdue"].GetFieldValue("YES");
Новый код длялогика даты и времени
if((Get-PSSnapin | Where {$_.Name -eq "Microsoft.SharePoint.PowerShell"}) -eq $null) {
Add-PSSnapin Microsoft.SharePoint.PowerShell;
}
$SPWeb = Get-SPWeb "http://contoso/sites/test";
$List = $SPWeb.Lists["Catalog"];
$currentDate = Get-Date;
$items = $List.Items;
foreach ($item in $items) {
$deadline = $item["TA Deadline"];
$dateFormat = [datetime]$deadline
#if date Format is less or equal than current date then update the Overdue drop down field to yes
if($dateFormat -le $currentDate)
{
$item["Overdue"] = "YES"
Write-Debug $item["Overdue"]
$item.Update()
}
}
$SPWeb.Dispose();