Добавление значений других типов цен на основе базовой
Когда появляются новые типы цен в Битрикс, руками добавлять новые значения цен каждому товару не очень хочется. В этому случае потребуется разработка скрипта, который на основе базового типа цены автоматически сделает перерасчет и добавит новые значения цен каждому товару (кроме деактивированных товаров)
- Смотрим ID типа нужной нам цены (путь «Магазин -Цены -Типы цен»)
- Используем компонент 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);
} - Результат работы скрипта добавления цен
Ещё статьи:
15.02.2024
История о жадности или как клиент свободное место искал на сервере
Случилась у меня одна история с клиентом, который свободное место искал на сервере, но на самом деле это больше о жадности, но в итоге всё равно пришл...
ID: 466
08.11.2023
Хроники БУС упадка
На днях произошли очередные изменения в БУС битрикс. Полезный модуль bitrix.xscan включили в состав проактивной защиты и убрали из бесплатного сегмента...
ID: 465
26.07.2023
Kwork.com закрыл доступ для резидентов РФ
Доступ к выставлению услуг теперь ограничен "К сожалению, вынуждены сообщить, что резиденты РФ в настоящее время не могут использовать сайт Kwork...
ID: 463
Новые статьи в блоге:
27.11.2024
Ошибка при 1с обмене 502 Bad Gateway
Произошла ошибка на стороне сервера. Получен неизвестный статус импорта.
Обмен не выполнен. Ответ сервера: 502 Bad Gateway
ID: 540
20.11.2024
Задача для РНР, разработать Футбольный календарь
На первый взгляд задача кажется не сложной, но это не так. Нужно учитывать, что она займёт время, многие не успевают сделать в сроки.
ID: 538
20.11.2024
Нюансы обмена доставок один случай
Описание проблемы.
В сторону 1С синхронизацию доставок она налажена, информация записывается (проставляется тип доставки, зона доставки)
ID: 537