Если Ваш интернет-магазин интегрирован с 1С, скорее всего столкнулись с такой проблемой: 1С не умеет выгружать параметры товара: Вес, Ширина, Высота, Глубина.
Заполнение габаритов товара, после обмена с 1С, из свойств элемента инфоблока.
29.04.2019 11:22:49
Добрый день
Написал обработку для того что-бы из реквизитов товара брать вес и габариты торгового предложения. Если интересно вот ссылка |
|
|
15.08.2020 22:56:37
![]() Но пусть тоже будет, у меня чуть иначе сделано и без ТП |
|||
|
19.08.2022 18:01:04
Тестил сегодня - все работает
<? function OnAfterIBlockElementUpdateAdd(&$arFields) { $el = new CIBlockElement; switch (SITE_ID ) { case 's1': $iBlockID = 12; break; case 's2': $iBlockID = 49; break; } $delivery_fields = array(); $db_props = CIBlockElement::GetProperty( $iBlockID, $arFields['ID'], array("sort" => "asc"), Array("CODE" => "CML2_TRAITS") ); while ($ar_props = $db_props->Fetch()) { switch ($ar_props["DESCRIPTION"]) { case 'Длина': $length = $ar_props['VALUE']; break; case 'Высота': $height = $ar_props['VALUE']; break; case 'Ширина': $width = $ar_props['VALUE']; break; } } $delivery_fields = array( 'LENGTH' => $length * 10, 'HEIGHT' => $height *10, 'WIDTH' => $width *10 ); \Bitrix\Catalog\Model\Product::update($arFields['ID'], $delivery_fields); } |
|
|
19.08.2022 18:05:35
'WIDTH' => $VALUES['3'] * 10,
'HEIGHT' => $VALUES['4'] * 10, 'LENGTH' => $VALUES['5'] * 10; Тут недочет - если из 1с не прийдет какое либо поле то ключи собьются и ваши габариты запишутся не туда, либо же к примеру прийдет еще 1поле - обьем, тогда 'WIDTH' => $VALUES['3'] * 10, уже будет не [3], а к [4] например, поэтому можно сравнивать по описанию полей Тестил сегодня - все работает
Изменено: |
|||
|
19.08.2022 18:28:52
В целом да. Если ключи собъются все поломается. Только и остается, проверять по точному названию поля.
Изменено: |
|
|
24.04.2024 12:18:07
можно использовать D7
|
||||
|
||||
Блог-note: заметки разработчика
Установить цену товара из свойства инфоблока
На одном из проектов, нужно было единоразово заполнить цены товаров из свойства инфоблока. Сделать это можно через API, ...
Время на БД и веб сервере отличается на 3600 секунд, тест Битрикс
Достаточно часто, при проверке параметров системы, в Битрикс, можно увидеть одну из ошибок: Время на БД и на сервере- Вр...
Регистрация пользователя в определенную группу сайта на Битрикс
Достаточно часто требуется регистрировать пользователя в определенную группу, в зависимости от того какую форму регистра...
Постраничная навигация в списке разделов Битрикс- catalog.section.list
Если в магазине очень много разделов и хочется вывести их с постраничной навигацией: можно воспользоваться методами CDBR...
Заполнить коэффициент единицы измерения (MEASURE_RATIO) из свойства элемента
Задача: Каталог наполняется из 1С, но 1С не передает коэффициент единицы измерения (особенность конкретной 1С, но во...
Вывести общее количество товаров в шаблоне корзины 1С-Битрикс
Задача: вывести общее количество товаров в корзине (именно количество единиц товара, а не позиций). При этом да...
Как добавить режим редактирования элементов в собственном компоненте Битрикс
Задача: добавить режим редактирования и удаления элементов в собственном компоненте.
Настройка: Redis кеширование для 1С-Битрикс, под Ubuntu
Задача: имеем полностью настроенный и оптимально сконфигурированный веб-сервер под управлением Ubuntu 20.04 на котором з...
Создать pdf файл из элемента инфоблока, дать скачать пользователю, поддерживать в актуальном состоянии или отправить на e-mail.
Задача: при каждом посещении статьи, на сайте, нужно создавать pdf файл с ее содержимым и записывать в свойство инфоблок...