Разделы можно привязывать к каталогу СБИС, а не к прайс-листу. До этой версии разделы сайта связывались с номером папки в дереве прайс-листа. Этот номер выдаётся заново при каждой пересборке прайса: на живой базе после полной пересборки из 3510 товаров номер позиции сменился у всех, а каталожный код — ни у одного. В результате обмен создавал дерево разделов заново, а прежние разделы оставались пустыми, и происходило это молча — импорт отрабатывал без ошибок. Теперь в настройках есть выбор «Разделы привязывать к: каталогу СБИС / прайс-листу». Структура берётся одним дополнительным запросом, поштучных обращений не добавилось.
Обновление ничего не ломает. У сайтов, которые обновляются с прежних версий, привязка остаётся прежней — прайс-листовой. Каталожная включается только вручную и предупреждает о последствиях. Новые установки сразу получают привязку к каталогу.
Ограничение выгрузки одной папкой каталога. В каталоге СБИС рядом с торговыми папками обычно лежат учётные — «Архив», «Не для продажи», «НЕ индексируется». Без ограничения они попадали в файл и создавались на сайте пустыми разделами. Появилось поле «Код папки каталога СБИС».
Штрихкоды раскладываются по типам. СБИС отдаёт штрихкоды массивом в непредсказуемом порядке: у одного товара EAN13 идёт первым, у соседнего — вторым, после внутреннего короткого кода. Профиль импорта берёт первый, поэтому часть товаров молча меняла символьный код, а вместе с ним и адрес страницы: на живом каталоге так пострадали 27 товаров из 2854, их прежние ссылки стали отдавать 404. Теперь рядом с общим тегом выгружается тег на каждый тип — «barcode_ean13», «barcode_shortcode» и так далее, — и в профиле импорта каждый тип раскладывается в своё поле. Общий тег сохранён, настроенные профили не затронуты.
Вес, габариты и страна происхождения. Раньше не выгружались вовсе: список номенклатуры этих полей не отдаёт. Теперь берутся из каталожной выгрузки тем же запросом. На проверочной базе вес заполнился у 736 товаров.
Кнопка «Загрузить из СБИС» у фильтра по характеристике снова работает. Список характеристик собирался с первой страницы номенклатуры от корня каталога. Если в корне лежат только папки — а так устроен любой обычный каталог, — товаров в выборке не оказывалось, и модуль отвечал «в номенклатуре нет характеристик». Сообщение звучало как факт о данных пользователя. Теперь модуль спускается по дереву и останавливается, набрав достаточно товаров; отдельно различаются «характеристик нет» и «товаров в выборке нет».
Панель «Сохранить» больше не прячется под сгибом. Форма настроек длинная, и кнопку приходилось искать прокруткой. Панель действий прибита к нижней части формы и видна всегда.
Секреты в настройках скрыты. Защищённый ключ, сервисный ключ и адрес вебхука Битрикс24 выводились открытым текстом и читались с экрана. Теперь скрыты, как и пароль сотрудника.
Блок «Резервы и внешние коды» разделён на два. Четыре поля шли одним списком, хотя работают независимыми парами: логин с паролем дают резервы, подключение с галочкой — внешние коды маркетплейса. Настраивающий читал блок сверху вниз и выбирал подключение, которое резервам не нужно. Теперь это два блока со своими заголовками и пояснениями, второй помечен как редко нужный.
Понятно, что такое «external_id». Сквозной код товара выгружается всегда и никаких настроек не требует — это отдельный тег, не связанный с галочкой «внешние коды». В блоке настроек об этом сказано прямо, и там же названа цена включения внешних кодов в минутах.
Страница «Запуск вручную» приведена в порядок. Блоки идут по ходу дела: номенклатура, остатки, Битрикс24. Все кнопки выглядят одинаково и показывают, что работа идёт, — раньше у выгрузки остатков не было ни того, ни другого, и нажатие выглядело как «не сработало». Блок Битрикс24 показывается, только когда интеграция настроена. Уточнено описание выгрузки остатков: она не быстрее выгрузки номенклатуры, каталог обходится целиком.
Убраны искажённые символы в интерфейсе. Тире, стрелки и разделители были записаны в разметке напрямую и на сайтах в UTF-8 отображались ромбиками — например, в колонках «Размер» и «Обновлён» таблицы текущих файлов.