Как работает обмен товарами 1С УТ и Битрикс24

Клиентам нужна интеграция Битрикс24 и 1С. Связь этих систем дает меньше дублирования, больше возможностей, лучше эффективность.

Чаще всего спрашивают:

  1. Обмен товарами

  2. Синхронизацию базы контрагентов

  3. Единую базу заказов.

Сегодня говорим об обмене товарами. Контрагенты и заказы — в следующий раз.

Самая распространенная конфигурация — Управление торговлей (в других используется схожий модуль обмена)

На специальном сайте Битрикс предлагает скачать модули обмена 1С с веб-сайтом и Битрикс24. Нас встречают бодрым приветом:

Сегодня мы проверим как работает обмен товарами с 1С Управление Торговлей, и опишем методы решения обнаруженных проблем.

Итак.

Настройка обмена

Чего хочет клиент от обмена товарами с 1С:

  1. Чтобы товар можно было править с обеих сторон, добавлять товары и в 1С, и в Битрикс24, и видеть изменения.

  2. Отображение цен (зависящих от региона, контрагента, объема) и корректную работу с НДС.

  3. Показ наличия, остатков при формировании заказа

  4. Корректной обработки изменений типа “товар сняли с продажи в 1С”

Проверяем.

Имеется: Свежезарегистрированный Битрикс24 (включили полный тариф на месяц), копия боевой 1С УТ 1С:Предприятие 8.3 (8.3.7.2027) Управление торговлей, редакция 11.1 (11.1.10.195).

На стороне Битрикс24

Включаем в Битрикс24 обмен (тариф Команда и выше).

Настройка параметров обмена товарами. Я отметил на рисунке несколько странностей.

Первая — надежда на двусторонний обмен усиливается — есть вкладка с настройками экспорта.

Вторая и третья — указаны Каталог и Тип цены, одинаковые для всех порталов и не связанные с нашей 1С (импорта еще не было, все впереди). Посмотрим что будет.

На стороне 1С Управление торговлей

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

Настраиваем обмен. Процедура тоже знакомая, делается по инструкции.

Сразу ставим галку “выгружать цены”.

Для передачи розничных цен создаем или редактируем “Типовое соглашение об условиях продаж”

Рекомендую указать к выгрузке не все товары, а пока несколько десятков (если настроите неверно, будете долго ждать).



На стороне Битрикс24

ID каталога рекомендуется ввести в настройки синхронизации Битрикс24. На практике работает и без этого, нужный ID установится в поле сам.

При этом типы цен не редактируются и автоматически тоже не загружаются.

Импортируем товары из 1С в Битрикс24

Процесс импорта был связан с несколькими ошибками:
Ошибка 1. В модуле обмена версии 5.0.0.8 при отборе через “Группы номенклатуры” не были выгружены товары (1С не выгрузила)

Пришлось повторить процедуру через “Настроить отбор”.

Больше проблема не повторялась, но сначала я расстроился.

Ошибка 2. Если оставить галку “выгружать контрагентов” в модуле обмена, то импорт товаров заканчивается относительно быстро и без проблем, а потом идут ошибки импорта контрагентов, что приводит к крайне долгому процессу.

6 минут на попытку — много!

Справка честно предупреждает, что обмен контрагентами не работает, но “защиты от дурака” не предусмотрено. Совет простой — снимайте галочку при обмене товаров.

Если все сделать корректно, то товары из 1С появляются в Битрикс24 вместе с ценами.

Работает все это с приемлемой скоростью: 12 товаров передаются за 32 секунды, 11 тысяч товаров выгружались 1 час 6 минут (если снять галку “выгружать предложения”, то быстрее на 12 минут, притом что визуально изменений нет).

Частичная выгрузка и обработка изменений

Частичная выгрузка потом при небольшом объеме изменений занимает менее 2 минут.

Были проверены все основные действия по изменению:

  1. Новые товары — появляются

  2. Изменная цена меняется в справочнике товаров, но сохраняется в уже созданных сделках (это корректно).

  3. Измененные доп.поля изменяются в справочнике.

  4. Товар после удаления не исчезает из справочника, но становится "неактивен".

Проблем нет.

Ограничения обмена товарами 1С и Битрикс24

Итак, что важно знать:

  1. Обмен односторонний, то есть информация идет из 1С в Б24. Обратно — нет. Справка на внутренних страницах об этом честно предупреждает, невзирая посеянные на первой странице и в самом портале надежды.

  2. Контрагенты и пользовательские справочники не передаются

  3. Остатки в Б24 не отображаются (хотя модулем обмена передаются).

Решение проблем обмена товарами 1С и Битрикс24

1С "Управление торговлей" намного универсальнее и сложнее чем продукты семейства Битрикс. У них больше возможностей.

В Битрикс24 реализована упрощенная относительно 1С и интернет-магазинов модель работы с товарами. Не думаю, что эта ситуация когда-либо изменится.

Итак, решаем проблемы.

Односторонний обмен

Наше предложение очень простое — этот вопрос решать не надо. Обмен должен быть односторонним, Битрикс24 является “ведомой” информационной системой, все данные о товарах в ней надо брать из 1С.
Честно говоря, с трудом можно представить себе компанию, в которой будет нужно параллельно вводить товары в столь развитую систему, как 1С, и в столь простую, как Битрикс24.

Интернет-магазины на Битриксе в этом смысле более гибкие, но даже для них мы советуем работать с товарами исключительно в режиме одностороннего обмена.

Контрагенты и пользовательские справочники

Не передаются.

Контрагентами мы займемся в следующей статье, а пользовательские справочники обсудим сейчас.
Действительно, “списочные” поля выгрузить в “highload блоки” сейчас нельзя (их просто нет в Б24).

Надеюсь, в будущем разработчики систем  наладят выгрузку справочников в отдельные “списки” Битрикс24 и организуют связь сущностей CRM с этими списками.
Это плохая новость, но есть и хорошие:

1. Доп.свойства товаров передаются из 1С в Б24

2. “Выпадающие списки” передаются вместе со списками значений.


Остатки не передаются

Действительно, в настоящий момент остатки не передаются, штатный импорт этого не умеет. В Битрикс24 нет даже специальных полей для этого.

Хочется уже что-то попрограммировать, но на практике можно решить задачу проще.

Шаг 1. Делаем в 1С новое поле у товара для показа наличия

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

Шаг 2. Передаем это поле штатным импортом в Б24 (оно передается)

Шаг 3. Настраиваем показ этого поля в списке товаров, в сделках




Все как надо.

Мало? Хочется передать что-то еще?

Если передача данных через свойства товаров вас не устраивает, и хочется изменять что-то еще в Битрикс24 на основе данных из 1С, придется попрограммировать.

Самая простая схема выглядит так.

  1. 1С выгружает данные. Лучше если данные будут предельно простые — csv-табличка типа ID-значение

  2. Данные передаются через Битрикс.Диск в файловое хранилище Битрикс24.

  3. Пишется самое простое Приложение для Битрикс24 (1 типа, например), которое с применением javascript’ового REST API берет данные из локального файла и обновляет сущности Битрикс24.

  4. Сложности появятся при необходимости передачи файлов обмена статусами, больших объемах и тому подобном, но все это решаемо.

Уйдет на такой механизм часов 20-30 работы.

Выводы и оценка трудоемкости настройки обмена товарами

Обмен товарами 1С и Битрикс24 работает и решает практически все задачи, которые хотят клиенты на первом этапе.

Трудоемкость настройки стандартного обмена, учитывая подготовку на стороне 1С, последующие настройки Б24, инструктаж сотрудников составляет до единиц до десятков часов.
В реальных проектах мы закладываем от 15 часов. Если нужно программно расширять обмен — еще от 20 часов.

В следующих статьях — обмен контрагентами и заказами.


Внедрение Битрикс24
Выбрать файл
Доступно: doc, rtf, pdf, txt, docx.