Почему при выгрузке из 1С:УТ 11.3 в 1С-Битрикс характеристики номенклатуры попадают в «предложения без товара»?

Системный администратор 1С v8.3 (Управляемые формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

При организации обмена между конфигурацией 1С:Управление торговлей (ред. 11.3) и сайтом под управлением 1С-Битрикс специалисты иногда сталкиваются с некорректным отображением торговых предложений. Типичный сценарий: в документе оприходования или на складе числится номенклатура с несколькими характеристиками (например, цвета «черный» и «золотой»). Однако после обмена одна из характеристик выгружается корректно, а остальные попадают в раздел «предложения без товара» и не привязываются к родительской карточке на сайте.

Рассмотри подробно причины возникновения этой избирательности и разберем способы решения проблемы.

Выясним причину проблемы

Проанализируем ситуацию, когда одна часть характеристик привязывается к товару, а другая выгружается с ошибкой привязки. Основная причина кроется в истории изменения структуры номенклатуры в 1С.

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

  1. Родительский элемент передает уникальный идентификатор номенклатуры (GUID_товара).
  2. Торговые предложения передают составной идентификатор вида GUID_товара#GUID_характеристики.

Из-за того, что на сайте уже существовал простой товар с базовым GUID_товара, стандартный модуль импорта не всегда может корректно преобразовать существующую карточку в товар с торговыми предложениями. В результате возникает дублирование «элемента каталога» или рассинхронизация свойства привязки CML2_LINK, из-за чего Битрикс принимает выгружаемые варианты, но не может привязать их к основному товару.

Способы решения и порядок действий

Способ 1. Удаление дублирующего элемента на стороне 1С-Битрикс

Это прямое решение, которое помогает быстро устранить конфликт привязок. Разберем по шагам, как исправить структуру:

  1. Перейдем в административную панель сайта 1С-Битрикс в раздел управления торговым каталогом.
  2. Найдем проблемную позицию и проверим наличие дублирующих элементов каталога или неизолированных записей в инфоблоке торговых предложений.
  3. Удалим устаревший дубликат карточки товара (старую запись простого товара без характеристик) или отвязанные элементы со статусом «предложение без товара».
  4. В 1С выполним повторную полную выгрузку каталога на сайт. После очистки старого элемента модуль импорта Битрикса заново создаст правильное дерево: родительский товар и привязает к нему все варианты характеристик.

Способ 2. Работа с регистрацией изменений в 1С

Если простым пересбросом обмена данные не обновляются, проверим регистрацию изменений объектов на узле плана обмена 1С. Для управления составом выгружаемых объектов можно использовать внешнюю обработку регистрации изменений (например, РегистрацияИзмененийДляОбмена83.epf):

  1. Откроем обработку регистрации изменений для узла обмена с сайтом.
  2. Найдем справочник Номенклатура и подчиненный справочник ХарактеристикиНоменклатуры.
  3. Снимем с регистрации проблемную позицию и ее характеристики.
  4. Зарегистрируем родительский товар и абсолютно все его характеристики заново, чтобы сформировать корректные пакеты обмена.
  5. Запустим сеанс выгрузки из 1С.

Способ 3. Пересоздание позиций в 1С (при сохранении ошибок)

Если на сайте зафиксирована история заказов с участием старого простого товара, платформа Битрикс может блокировать изменение типа товара на программном уровне. В таком случае выполним следующие действия:

  1. В базе 1С:УТ 11.3 создадим новую позицию номенклатуры, изначально указав в ее настройках вид номенклатуры с использованием характеристик.
  2. Перенесем остатки на новую позицию с помощью документа Пересортировка товаров или Оприходование излишков товаров.
  3. Старую позицию номенклатуры пометим на удаление или установим для нее признак прекращения продаж.
  4. Выполним обмен с сайтом. Новая позиция получит чистый GUID, и все характеристики гарантированно выгрузятся в виде подчинённых торговых предложений.
← На главную