Часто необходимо настроить иерархию товаров на сайте отличную от иерархии в 1С. Для настройки иерархии используется функционал модуля обмена между 1С-Битрикс и 1С. В данном случае для конфигурации 1С отсутствовал модуль обмена, создание иерархии проводилось своими средствами.
Была произведена выгрузка товаров из 1С в инфоблок 1С-Битрикс.
Была составлена альтернативная иерархия – иерархия, согласно которой должны отображаться товары в 1С-Битрикс. Разделы товаров, согласно альтернативной иерархии имеют три уровня. Элементы инфоблока размещаются в разделе третьего уровня иерархии. Разделы второго и третьего уровней иерархии могут повторяться в нескольких разделах верхних уровней, что не позволяет привязать элементы к разделам инфоблока по наименованию. В 1С было создано свойство товара «Иерархия альтернативная», в котором хранится информация о необходимом размещении товара в иерархии.
В 1С-Битрикс были созданы: свойство элемента инфоблока «Иерархия альтернативная», свойство раздела «Код из 1с». При выгрузке свойства заполняются из 1С.
Необходимо получить из свойства элемента инфоблока «Альтернативная иерархия» код раздела из 1С, сравнить полученный код с кодом из свойства «Код из 1с» разделов инфоблока, при совпадении кода привязать элемент к каталогу. Для этого необходимо следующее:
-
Получить массив элементов каталога для получения кода элемента и кода раздела из 1С, в который следует поместить элемент.
-
Получить из элемента массива код раздела в 1С, в который следует поместить элемент.
-
По коду раздела в 1С получить код раздела инфоблока в Битрикс.
-
По полученному коду раздела в Битрикс привязать элемент инфоблока к разделу согласно иерархии.
Таким образом, мы привязали выгруженные из 1С товары к разделам инфоблока, согласно иерархии.