Задача: вывести свойство Код номенклатуры в корзине
Проблема:
Добавление товара в корзину реализовано не стандартно, поэтому установка значений параметров, добавляемых в корзину для компоненты catalog не отрабатывает.
Вариант решения:
Добавляем в init.php событие OnBeforeBasketAdd
В результате, свойство KOD_NOMENKLATURY в состав заказа установилось и после оформления заказа видим его в админке.
Теги: свойство товара, корзина, OnBeforeBasketAdd
Проблема:
Добавление товара в корзину реализовано не стандартно, поэтому установка значений параметров, добавляемых в корзину для компоненты catalog не отрабатывает.
"PRODUCT_PROPERTIES" => array(
0 => "KOD_NOMENKLATURY"
),
Вариант решения:
Добавляем в init.php событие OnBeforeBasketAdd
AddEventHandler("sale", "OnBeforeBasketAdd", "OnBeforePresentToBasket");
function OnBeforePresentToBasket(&$arFields)
{
if(CModule::IncludeModule("iblock"))
{
$arFilter = array("IBLOCK_ID" => 1, 'ID' => $arFields['PRODUCT_ID']);
$arSelect = array('IBLOCK_ID',"PROPERTY_KOD_NOMENKLATURY");
$rsElement = CIBlockElement::GetList(array('SORT' => 'ASC'), $arFilter, false, false, $arSelect);
if ($arElement = $rsElement->GetNext())
{
$arFields['PROPS'][] = array(
'NAME' => "Код номенклатуры",
'CODE' => "KOD_NOMENKLATURY",
'VALUE' => $arElement["PROPERTY_KOD_NOMENKLATURY_VALUE"],
'SORT' => 0
);
}
}
return;
}
В результате, свойство KOD_NOMENKLATURY в состав заказа установилось и после оформления заказа видим его в админке.
Теги: свойство товара, корзина, OnBeforeBasketAdd