Как отключить выгрузку товаров из 1С:УТ 10.3 на сайт Битрикс в виде торговых предложений (SKU)?

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

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

В рамках данной статьи мы подробно разберем причины возникновения этой проблемы и рассмотрим пошаговые методы её устранения как на стороне учетной системы 1С, так и в административной панели «Битрикса».

Выясним причину: почему товары становятся торговыми предложениями?

Для начала проанализируем механизм работы стандартного обмена. Система «Битрикс» определяет тип приходящего объекта по структуре XML-файла. Если 1С формирует отдельный файл offers.xml (коммерческие предложения), «Битрикс» автоматически интерпретирует данные как SKU. Основные факторы, провоцирующие это поведение:

  1. Версия протокола CommerceML: Использование версий 2.07 и выше подразумевает жесткое разделение на описание товара и его ценовые предложения.
  2. Логика модуля обмена: Старые версии встроенных модулей или отсутствие специфической галочки в настройках заставляют систему создавать «пустое» торговое предложение для каждого товара.
  3. Настройки инфоблока: Наличие связи между основным каталогом и инфоблоком предложений в настройках сайта.
  4. Складской учет: Выгрузка остатков в разрезе складов часто принудительно переводит товар в режим торговых предложений.

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

Способ 1. Обновление и настройка модуля обмена «Битрикс» в 1С

Первым делом проанализируем версию используемого модуля обмена. Встроенный в типовую УТ 10.3 механизм обмена обладает ограниченным функционалом. Рекомендуется установить внешний модуль от компании «Битрикс» (версии 4.х или 5.х).

После установки модуля выполним следующие действия:

  1. Перейдем в настройки узла обмена с сайтом.
  2. Откроем вкладку «Настройка выгрузки товаров».
  3. Найдем параметр «Выгружать товары как простые, если у них нет характеристик» и установим этот флаг.

Эта опция заставляет модуль программно проверять наличие характеристик у каждой позиции. Если характеристики не используются, данные будут упакованы в основной файл import.xml, что позволит «Битриксу» создать простой товар.

Способ 2. Понижение версии протокола CommerceML

Если обновление модуля нецелесообразно или не помогает, проанализируем настройки версии XML. В настройках обмена в 1С можно изменить версию CommerceML:

Попробуем переключить версию на 2.05 и выполнить полную выгрузку. Однако следует помнить, что это может повлиять на передачу других специфических данных (например, свойств или налоговых ставок), поэтому после переключения необходимо тщательно проверить корректность заполнения карточек на сайте.

Способ 3. Корректировка настроек на стороне «1С-Битрикс»

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

  1. Перейдем в раздел Магазин -> Настройки -> Каталоги товаров.
  2. Найдем в списке наш основной инфоблок.
  3. Проверим наличие связи в колонке «Инфоблок предложений». Если связь установлена, «Битрикс» будет пытаться создавать SKU.
  4. Также заглянем в настройки самого инфоблока (Контент -> Типы инфоблоков -> [Ваш каталог]). На вкладке «Торговый каталог» убедимся, что не стоит принудительная логика работы только с предложениями.

Способ 4. Программная очистка идентификаторов (для разработчиков)

Разберем технический нюанс: иногда 1С формирует идентификатор товара в формате ID_товара#ID_предложения. Символ «решетка» является для «Битрикса» прямым указанием на то, что объект является SKU. Даже если ID_предложения пуст или равен нулю, наличие разделителя может вызвать проблему.

Если вы имеете доступ к коду выгрузки, проанализируем процедуру формирования узла Ид. Код должен выглядеть примерно так:


// Пример логики в модуле обмена
Если НЕ ТоварИмеетХарактеристики Тогда
    УзелИдентификатор = ИдентификаторТовара; // Без добавления #
Иначе
    УзелИдентификатор = ИдентификаторТовара + "#" + ИдентификаторХарактеристики;
КонецЕсли;

Убедимся, что в случае отсутствия характеристик в XML попадает чистый GUID товара.

Способ 5. Полная перезагрузка данных

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

Проанализируем правильный алгоритм действий при изменении логики выгрузки:

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

Влияние учета по складам

Выясним еще одну скрытую причину. В УТ 10.3 при включении настройки «Выгружать остатки по складам», модуль формирования XML может генерировать структуру предложений для каждого склада. На стороне «Битрикса» это часто интерпретируется как разные SKU. Если вам не критично отображение остатков по конкретным магазинам на сайте, а достаточно общего количества, попробуем отключить детализацию по складам в настройках обмена 1С.

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

← На главную