Не возвращается исключение.
| Код |
|---|
$APPLICATION->ThrowException('Имя входа должно быть заполнено.');
return false; |
При этом если перед исключением поставить die(), то выполнение прекратиться, т.е программа до этого места доходит.
| Код |
|---|
function OnAfterIBlockElementUpdateHandler(&$arFields)
{
$res = CIBlockElement::GetByID($arFields["ID"]);
if($ar_res = $res->GetNext())
$temp=$ar_res["ACTIVE"];
if($ar_res['SHOW_COUNTER']>2 ){
var_dump($temp);
echo "больше 2 просмотр";
if (strCaseCmp($temp,"N")==0){
global $APPLICATION;
$APPLICATION->ThrowException('Имя входа должно быть заполнено.');
return false;
}
}
} |
При этом в таком виде, все прекрасно работает:
| Код |
|---|
if($ar_res['SHOW_COUNTER']>2){
global $APPLICATION;
$APPLICATION->ThrowException("Товар невозможно деактивировать, у него " .$ar_res['SHOW_COUNTER'],"\n просмотров");
return false;
}
|