Добавление значений других типов цен на основе базовой

Добавление значений других типов цен на основе базовой

24.09.2017

Когда появляются новые типы цен в Битрикс, руками добавлять новые значения цен каждому товару не очень хочется. В этому случае потребуется разработка скрипта, который на основе базового типа цены автоматически сделает перерасчет и добавит новые значения цен каждому товару (кроме деактивированных товаров)

  1. Смотрим ID типа нужной нам цены (путь «Магазин -Цены -Типы цен»)

  2. Используем компонент catalog.section. Делаем выборку товаров по типу цены и с помощью CPrice::Add добавляем новые значения. Скачать пример скрипта.
    foreach($arElement[‘OFFERS’] as $arSku):
    $PRICE_TYPE_ID = 1;
    //сделаем выборку
    $rsPrices = CPrice::GetList(array(), array(‘PRODUCT_ID’ => $arSku[‘ID’], ‘CATALOG_GROUP_ID’ => $PRICE_TYPE_ID));
    if ($arPrice = $rsPrices->Fetch())
    {
    Базовая цена — <pre><?echo CurrencyFormat($arPrice[«PRICE»], $arPrice[«CURRENCY»]); ?></pre>
    // Установим для товара и типа цены 3 значение
    $PRODUCT_ID = $arSku[‘ID’];
    $PRICE_TYPE_ID = 3;$arFields = Array(
    «PRODUCT_ID» => $PRODUCT_ID,
    «CATALOG_GROUP_ID» => $PRICE_TYPE_ID,
    «PRICE» => $arPrice[«PRICE»]*1.05,
    «CURRENCY» => «RUB»
    );$res = CPrice::GetList(
    array(),
    array(
    «PRODUCT_ID» => $PRODUCT_ID,
    «CATALOG_GROUP_ID» => $PRICE_TYPE_ID
    )
    );

    if ($arr = $res->Fetch())
    {
    CPrice::Update($arr[«ID»], $arFields);
    }
    else
    {
    CPrice::Add($arFields);
    }

  3. Результат работы скрипта добавления цен

Ещё статьи:

15.02.2024 История о жадности или как клиент свободное место искал на сервере
Случилась у меня одна история с клиентом, который свободное место искал на сервере, но на самом деле это больше о жадности, но в итоге всё равно пришл... ID: 466

08.11.2023 Хроники БУС упадка
На днях произошли очередные изменения в БУС битрикс. Полезный модуль bitrix.xscan включили в состав проактивной защиты и убрали из бесплатного сегмента... ID: 465

26.07.2023 Kwork.com закрыл доступ для резидентов РФ
Доступ к выставлению услуг теперь ограничен "К сожалению, вынуждены сообщить, что резиденты РФ в настоящее время не могут использовать сайт Kwork... ID: 463

Новые статьи в блоге:

31.07.2024 Нюансы продления лицензии на 3 и 6 месяцев от 12 месяцев
На маркетплейсе есть такая кнопка "купить продление", при нажатии на неё есть выпадающий список продолжительность (3 мес. самый дешовый ... ID: 494

31.07.2024 Ошибка в блоке "Вы смотрели" на базе catalog.section
При создании блока "Вы смотрели" на базе catalog.section на детальной странице товара столкнулся с ошибкой, когда блок работал не корректно,... ID: 493

28.05.2024 cURL error 28 Connection timed out after 10001 milliseconds
Ошибка загрузки загрузки обновлений вордпресс. Не даёт закачать обновление на сайт, возможно есть какая-то информация в логах сервера. ID: 470

Возврат к списку

© 2015-2024 Web админ
Связаться по WhatsApp