Реализация онлайн-обмена между «Магазином 15» и «1С: Предприятием»
Онлайн-обмен представляет собой взаимодействие между системой «1С:Предприятие» и базой данных Mobile SMARTS, при котором мобильное устройство имеет доступ к данным из 1С в режиме реального времени. Это устраняет необходимость регулярно обновлять информацию на терминале путем ручной выгрузки справочников и документов (подробнее см. в статье об онлайн-режиме).
Механизм реализуется через серверные события, позволяющие интегрировать логику обработки действий, происходящих на сервере Mobile SMARTS, во внешнюю систему учёта. Важно, чтобы база Mobile SMARTS была доступна с сервера 1С, поскольку выполнение логики осуществляется именно на стороне сервера (см. статью «Подключение к базе Mobile SMARTS с сервера 1С»).
Принцип онлайн-обмена
В решениях Mobile SMARTS, помимо классической выгрузки/загрузки данных, предусмотрен режим реального времени, который позволяет ТСД напрямую обращаться к данным из 1С во время работы.
В этом разделе подробно описывается, как осуществляется взаимодействие ТСД с системой 1С при включенном онлайн-обмене. Примером служит стандартная конфигурация «1С:Розница 2.2». После изучения материала вы сможете самостоятельно реализовать данный механизм у себя.
Теория и подготовка
-
Онлайн-режим позволяет получать данные документов и справочников прямо с сервера 1С, без участия пользователя в процессе обмена. Это устраняет необходимость после каждого сканирования вручную запускать синхронизацию данных через внешнюю обработку.
-
Обмен информацией между сервером Mobile SMARTS и 1С происходит посредством компоненты «V8.ComConnector». Подключение возможно даже к локальной базе в файловом режиме.
В старых версиях решений на базе Mobile SMARTS (с использованием ПРОФ-драйвера) применялся альтернативный способ — чер ез объект «V8.Application», запускающий толстый клиент 1С в фоновом режиме. Однако для современных решений («Склад 15», «Магазин 15») такой подход не подходит.
Схема подключения:
-
В панели управления Mobile SMARTS это отображается следующим образом:
-
Режим онлайн активируется в окне «Настройки подключения».
Если до начала работы с ТСД данные были выгружены вручную, устройство будет использовать локальные копии. Это лишает пользователя доступа к актуальным данным из 1С и требует периодической ручной синхронизации остатков, цен и справочной информации.
-
При включенном режиме онлайн данные извлекаются при помощи обработчиков событий — например, при запросе справочника по штрихкоду или получении списка документов. Эти процедуры должны находиться в модуле обработки и быть помечены как экспортируемые.
-
Назначение событий и соответствующих обработчиков производится во вкладке «События сервера»:
На текущий момент задействованы не все обработчики — в будущем функционал планируется расширить.
Пример обработчиков в модуле объекта:
-
Для лучшего понимания логики работы приведена схема событий:
Подробности по каждому обработчику можно уточнить у сотрудников Клеверенс — Сергея Шаширова и Михаила Пузырёва.
Демонстрация работы и отладка
-
При запуске режима онлайн создается COM-соединение, по которому извлекаются данные из 1С. Его можно использовать для подключения отладчика:
-
Далее запускается ТСД или ПК-клиент Mobile SMARTS, можно установить точку останова, например, на метод «ПолучитьСписокДокументов». На клиенте открыт список документов «Поступление»:
Толстый клиент заходит в обработку:
-
После выполнения метода документы отображаются на ТСД:
При изменении обработки её необходимо пересохранить и перезапустить «Внешнее соединение» в панели управления, иначе запущенный толстый клиент продолжит использовать старую версию обработки.