Автоматизация получения ID номенклатуры с сайта для печатных форм

Компания «Форватер» — интернет-магазин инженерной сантехники, который включает свыше 10 тысяч наименований продукции от более чем 70 ведущих брендов из Европы и США. У нас вы найдете все для монтажа сетей отопления, водоснабжения, канализации и других инженерных коммуникаций.

Проблема

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

Решение

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

Реализация

В пользовательском режиме с помощью стандартной системы добавления дополнительных реквизитов и свойств добавили новый реквизит в подгруппе «Общие» справочника «Номенклатура»:

  • Тип реквизита: «Строка»
  • Наименование реквизита: «ID сайта»
  • Расположение реквизита: в карточке номенклатуры

Скриншот реквизита

Разработали внешнюю обработку интеграции с сайтом, которая:

  • устанавливает соединение с сайтом по указанному адресу, используя переданные логин и пароль
  • получает с сайта полный каталог номенклатурных позиций
  • сохраняет полученный каталог во временный файл
  • считывает данные из временного файла
  • сопоставляет номенклатурные позиции из файла с номенклатурой в 1С по полю «Внешний код»
  • для найденных соответствий записывает ID сайта в дополнительный реквизит «ID сайта» элемента справочника «Номенклатура»
  • проводит запись в регистр сведений о результатах проведенных действий в разрезе каждой номенклатурной позиции
  • если позиция в 1С не найдена, выводит сообщение «Номенклатура с ID [ID с сайта] в 1С не найдена! Запись доп. реквизита не проведена!»
Заказать