@Ex1st

Add2BasketByProductID отказывается добавлять свойства?

Subject.

Нужно добавить свойства, приходящие из фронта через AJAX. Действую, как написано в документации:
if (!Add2BasketByProductID($_REQUEST["item"], $_REQUEST["quantity"], array(), array(
                    array(
                        "NAME" => "Цвет",
                        "CODE" => "CLR",
                        "VALUE" => "красный"
                    )
                ))) {
                    if ($ex = $APPLICATION->GetException())
                        $strErrorExt = $ex->GetString();

                    $strError = "ERROR_ADD2BASKET";
                    $successfulAdd = false;
                }


Товары добавляются, а вот свойство нет (проверяю по записям в таблице b_sale_basket_props)

В какую сторону копать?
  • Вопрос задан
  • 479 просмотров
Решения вопроса 1
winer
@winer
занимаюсь разработкой сайтов на 1c-bitrix
Используйте новое API.
Примеры работы с корзиной и свойствами корзины

Получение корзины ПОКУПАТЕЛЯ
/*
 * $fuser - ID пользователя
 * $siteId - ID сайта, к которому привязана корзина
 */
$basket = \Bitrix\Sale\Basket::loadItemsForFUser($fuser, $siteId);

Добавление товара:
$basketItem = $basket->createItem($moduleId, $productId);
$basketItem->setField('QUANTITY', 4);


Добавляем свойство
$collection = $basketItem->getPropertyCollection();

$item = $collection->createItem();
$item->setFields([
    'NAME' => 'Новое свойство',
    'CODE' => 'XXX',
    'VALUE' => 'Значение',
]);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы