Как в 1С привязать товары к нескольким разделам?
Занимаюсь только сайтом, с 1с-ником не можем понять друг друга. Проблема в следующем. Имеется интернет-магазин, в который происходит выгрузка из 1С. На сайте и в 1С структура каталога совпадает. Каждый товар находится в своем разделе. В файле импорта из 1С в Битрикс это выглядит так:
Необходимо, чтобы товар был привязан к нескольким разделам. В битриксе это сделано так - выбран основной раздел, во вкладке "Разделы" выбраны нужные. Как это же самое реализовать в 1С? Я предполагаю, что файл импорта при этом приобретет следующий вид:
Возникает вопрос - как выбрать основной раздел товара? Как это настроить в 1С?
- Вопрос задан более трёх лет назад
- 4850 просмотров
- Вконтакте
Я правильно понимаю что требуется на сайте чтобы было отображение товара в нескольких разделах? Или именно в 1С УТ или что там у вас?
Просто с каждым обменом 1С затирает привязку товара к разделам сайта(категориям товара)и обновляет ее. Физически вы не можете хранить товар больше чем в одной категории товара. Таковы правила 1С УТ.
Вам требуется именно привязка товара к нескольким категориям на сайте и чтобы всё это работало с обменом, то есть не затиралось каждый раз.
Если да, то могу сбросить код
- Вконтакте
В 1С делать ничего не нужно. Вы просто используете ту структуру каталога которую создаете в модуле выгрузки.
Для этого просто добавьте в файл init.php который лежит в папке от корня /bitrix/php_interface
AddEventHandler("iblock", "OnBeforeIBlockElementUpdate","SaveMySection"); function SaveMySection(&$arFields)
Владимир Кай, все в порядке, открыл удаленный файл в шторме и забыл что по другому удаленные файлы сохраняются.
теперь все работает. Спасибо!
Андрей Пушкин, Так а в чем проблема? Решение с кодом на стороне сайта работает и с выгрузкой из 1С-ки. Сначала отключаете выгрузку, вставляете код в файл, потом создаете раздел на сайте который вам нужен.
Кладете в нужный раздел товар.
Включаете выгрузку и смотрите, удалился ли товар из созданной вами категории товара или нет. Я уверен что все будет работать нормально. Если что пишите.
Выгрузка может работать хоть каждую секунду, хоть в режиме реального времени. Это ни на что не влияет.
Владимир Кай, все сделал как вы написали. Не заработало :( Поскольку на одной лицензии несколько магазинов, то путь к файлу выглядит /bitrix/php_interface/s1/init.php
Сам файл со взятым с этой страницы кодом теперь выглядит вот так:
AddEventHandler("main", "OnAfterUserRegister", "OnBeforeUserRegisterHandler2"); AddEventHandler("main", "OnAfterUserRegister", "OnBeforeUserRegisterHandler");
function OnBeforeUserRegisterHandler2(&$arFields)
function OnBeforeUserRegisterHandler(&$arFields) AddEventHandler("iblock", "OnBeforeIBlockElementUpdate","SaveMySection"); function SaveMySection(&$arFields)