InTradeInTrade — на главную

← Все материалы

Интеграция мобильного приложения с 1С: как построить обмен, который не ломает учёт

· 5 мин чтения

На первой же встрече по автоматизации полевых продаж звучит один и тот же вопрос, и звучит он раньше, чем вопрос о цене: «А нашу 1С не придётся переписывать?»

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

Ниже — как обмен устроен технически, что через него ходит в обе стороны, и где он ломается на практике.

Расширение против правки конфигурации

Есть два способа научить 1С обмениваться с внешним приложением.

Первый — залезть в конфигурацию. Добавить свои реквизиты в справочники, свои поля в документы, свой код в модули. Работает быстро, но снимает конфигурацию с поддержки: при следующем обновлении типовой вы получите конфликты, которые надо разрешать вручную, и с каждым обновлением их будет больше. Через пару лет обновляться становится дороже, чем жить на старой версии — и компания перестаёт обновляться вовсе.

Второй — расширение. Это отдельный объект, который подключается к конфигурации, но лежит рядом с ней, а не внутри. Типовая остаётся типовой и продолжает обновляться штатно.

InTrade идёт вторым путём: обмен ставится расширением, без правок ядра. Данные ходят через отдельные регистры и очереди, а не через доработанные типовые документы. Работает с типовыми УТ, УНФ, БП КР 3.5 и с кастомными доработками.

Практический смысл простой: если завтра вы решите отказаться от мобильного приложения, расширение снимается, и конфигурация остаётся ровно такой, какой была.

Что ходит в обе стороны

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

Из 1С в приложение:

  • контрагенты и торговые точки;
  • номенклатура со штрих-кодами и DataMatrix;
  • цены и скидки по видам;
  • остатки складов;
  • виды оплаты и типы цен.

Именно поэтому агент на точке видит актуальную цену, а не вчерашнюю распечатку, и не обещает товар, которого нет.

Из приложения обратно в 1С:

  • документы реализации по визитам;
  • ПКО и ППВ по оплатам;
  • возвраты — уже согласованные супервайзером;
  • отчёты о визитах и результаты опросов;
  • фотографии и GPS-метки.

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

Когда именно происходит обмен

Приложение работает офлайн. Всё, что агент делает на точке — заказы, оплаты, фото, опросы — складывается в очередь на самом устройстве.

Как только у приложения появляется связь, накопленное уходит на сервер, а сервер создаёт документы в 1С. Агент при этом ничего не нажимает и вообще не думает о синхронизации: для него обмен — это то, чего он не замечает.

Такая схема означает, что заказ, оформленный в подвале магазина без сети, всё равно доедет до учётной системы — просто чуть позже, когда телефон поймает сеть по дороге к следующей точке.

Где обмен ломается на практике

Любая интеграция рано или поздно что-то не проводит. Вопрос не в том, случится ли это, а в том, узнаете вы об этом сразу или через месяц при сверке. Поэтому смотреть надо не на обещание «всё будет работать», а на то, что происходит, когда не работает.

В веб-админке есть раздел обмена с 1С, где видно:

  • логи обмена — что уходило и приходило, когда, с каким итогом;
  • статус каждого документа — прошёл, не прошёл, почему;
  • ручной повтор для проблемных объектов — можно перепровести конкретный документ, не трогая остальные.

Последнее важнее, чем кажется. Без ручного повтора единственный способ починить один зависший документ — перезапускать весь обмен, а это уже риск задвоения.

Что выясняется на этапе аудита 1С

Первый шаг внедрения — не установка, а аудит конфигурации: смотрим справочники, документы, регистры и фиксируем маппинг объектов. Скучный этап, но именно на нём вскрывается то, что потом определяет сроки.

Типичные находки:

Номенклатура без штрих-кодов. В офисе позицию находят поиском по названию, и годами всё нормально. Агент на точке сканирует — и половина ассортимента не сканируется. Штрих-коды придётся заводить, и это работа не программиста, а того, кто знает товар.

Торговые точки без координат. Адрес в справочнике есть, координат нет. GPS-проверка визита без координат точки не работает в принципе — сравнивать не с чем. Координаты собираются, но это отдельная задача, и лучше знать о ней заранее.

Один контрагент — несколько точек. В учёте магазин может быть заведён как один контрагент, хотя физически это пять торговых точек в разных районах. Для бухгалтерии это нормально, для маршрута агента — нет.

Виды цен, которые «все знают». Правило вида «этому клиенту даём минус пять» часто живёт в голове менеджера, а не в справочнике видов цен. Пока оно не формализовано, автоподстановка цены под клиента работать не будет.

Ни одна из этих находок не блокирует проект. Но каждая из них превращается в срыв срока, если всплывает не на аудите, а на второй неделе пилота.

Как проходит подключение

Порядок отработанный. На типовой конфигурации он занимает 2–5 дней; самописные и сильно доработанные оцениваем после аудита базы.

  1. Аудит конфигурации 1С. Смотрим вашу типовую или доработку: справочники, документы, регистры. Фиксируем маппинг объектов.
  2. Установка расширения к вашей конфигурации, без правок ядра. Обмен идёт через отдельные регистры и очереди.
  3. Пилот на одном маршруте. Настраиваем тенант, обучаем одного-двух агентов, запускаем реальные визиты, разбираем логи обмена.
  4. Масштабирование. Подключаем остальные роли, все маршруты и точки.

Третий шаг пропускать не стоит, даже когда очень хочется. Пилот на одном маршруте — это дешёвый способ обнаружить всё из предыдущего раздела на двух агентах вместо тридцати. День разбора логов на пилоте экономит неделю разбирательств на всей команде.

Если компаний несколько

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

То есть две компании в одной установке не видят данные друг друга и не делят между собой настройки обмена — при этом обновляется платформа для всех сразу.

С чего начать

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

InTrade — платформа для мобильной торговли и дистрибуции: приложение для торгового агента, супервайзера и экспедитора, веб-админка с GPS-контролем и планами продаж, двусторонний обмен с 1С расширением, без правок ядра конфигурации. Стоимость — за сотрудника в месяц, по ролям.