Оффлайн-режимы в Simple WMS: полностью автономные приложения, отложенная отправка, гибридный режим

15.08.19

Разработка - Мобильная разработка

Теперь Simple WMS имеет базу данных и можно создавать конфигурации для полностью автономных приложений, не зависящий от веб-сервера на стороне учетной системы, в выполнением логики на устройстве а не на стороне веб сервера. А также можно реализовывать другие гибридные режимы работы с использованием хранилища устройства. Тестировалось на платформе 1С 8.3.13.1865.

Я реализовал работу с базой данных в Simple WMS на чистом SQL-е. Т.е. это просто SQLсервер в приложении (SQLite 3) с которым можно общаться извне через HTTP-сервер приложения (в каждом клиенте встроен свой веб сервер) посредством SQL запросов или само приложение общается с ним SQL-запросами -как это заложено в конфигурации. Т.е. можно оправлять приложению POST запросы с SQLкомандами либо дать ему конфигурацию в которой эти самые SQL-запросы прописаны в логике работы. Это очень простое решение, но оно дает всю мощь SQL. Теперь можно делать автономные приложения без сервера. Конечно там есть обертки для упрощения этого процесса. Но я не пошел путем 1С и не стал создавать слой бизнеслогики – весь этот конструктор документов и справочников. Хочешь создать справочник – пиши CREATE TABLE. Да, это не визуальных конструктор конечно, но посмотрите на статьи на этом ресурсе – половину времени мы создаем решения, а вторую половину разбираемся как заставить 3-х звенную архитектуру работать быстрее. Как то мой препод по БД рассказывал что когда то давно (видимо во времена когда операционные системы были с строковым интерфейсом) язык SQL создавался как язык для пользователя. Т.е. пользователь приходил например в библиотеку и писал SELECT WHERE те книги которые ему нужны. Так что я думаю это не очень сложно.

В среде фрондендщков есть такое понятие как CRUD-приложения (от слов Create, Read, Update, Delete). Таким приложением является и Simple WMS. Только раньше оно общалось с БД учетной системы а сейчас со свой БД тоже. Я проанализировал основные места где приложение обращается к БД и теперь можно в конфигурации прописать тоже самое для off-line режима. Никакого кода в  обработчиках. Только SQL-запросы.

Например вот так создаются таблицы:

Вот так происходит поиск товара:

 

Вот так например заполняются таблицы. Кстати таблицы теперь можно выводить на форму. Вот как это выглядит:

 

Режимы работы

  • Полностью автономная работа.

 

 

При таком режиме ставится галка «Off-line» в настройках приложения и устройство не пытается что либо передать и забрать с Веб-сервера учётной системы. Веб-сервера на бекэнде может не быть вовсе. Работа клиента визуально никак не отличается от работы в он-лайн режиме, просто вместо обращения к серверу устройство делает запросы к своему SQL-серверу

 

 

  • Автоматическое переключение в off-line при отсутствии связи. 

 

 

 

Рассмотрим пример: вы сканируете приход (2 экрана: сканирование товара и ввод количества). Вы работаете в онлайн, но отошли от wi-fi и связь прервалась. На экране где идет сканирование товара вам надо распознавать штрихкод и проверять есть ли он в базе. Если в экране определена офф-лайн функция то будет исполнена она и ошибки об обрыве связи не будет.

На экране ввода количества уже что то надо записать в базу, но связи нет. Для этого достаточно в конфигурации определить галочку «Записать отложенную задачу». Что произойдет на устройстве? Оно сохранить состояние hashmap (Переменные) в свою БД и потом когда связь появится передаст ее в 1С. Т.е. если в отсутствии связи прошло 5 циклов то клиент запомнит что нужно передать 5 записей. Для обработки отложенных задач теперь есть отдельный веб-сервис и обработчик

  • Гибридный режим: запросы могут выполняться в он-лайн

              SQL-ная часть выполняется до отправки запроса send_input в учетную систему. Зачем это нужно? Часто критерием производительности WMS систем называют скорость          сканирования (вместе с поиском товара) и сравнивают системы по этому параметру.  Поиск в собственной таблице может обеспечить суперскорость. Это возможно по 2м причинам:

    • это прямой запрос к таблице БД. Он очень быстрый в отличии от 1С например;
    • таблицу конкретного устройства можно подготовить для конкретного рабочего места – это будет выборка из справочника а не весь справочник (например только сырье, в то время как в регистре Штрихкодов все подряд. Кроме того это таблица в 1NF сразу с теми полями которые нужны а не со ссылками;

 

 

Общение с учетной системой

Из 1С можно работать с SQL сервером конкретного устройства передавая команды через http. Например отправлять справочники и забирать результаты заполнения документов. Ну или создавать свои структуры данных.

Например этот запрос создает таблицу товаров:

Запрос = "create table IF NOT EXISTS goods (id integer primary key autoincrement,art text unique, barcode text, title text)";	
ПараметрыЗапроса  = "";
СтрокаОтвета = Справочники.scМобильныеКлиенты.ОтправитьSQLЗапросМобильныйКлиент(URLМобильногоУстройства,"ExecSQL","","&query="+Запрос+"&params="+ПараметрыЗапроса);

 

Этим запросом запрашиваются отсканированные товары.

Запрос = "create table IF NOT EXISTS goods (id integer primary key autoincrement,art text unique, barcode text, title text)";	
ПараметрыЗапроса  = "";
СтрокаОтвета = Справочники.scМобильныеКлиенты.ОтправитьSQLЗапросМобильныйКлиент(URLМобильногоУстройства,"ExecSQL","","&query="+Запрос+"&params="+ПараметрыЗапроса);

На всякий случай есть консоль запросов

Также есть примеры работы

 

 

 

 

В разделе к основной статье //infostart.ru/public/976636/  обновлены разделы документации, база 1С содержит пример конфигурации для работы с OFF-line режимом.

Вступайте в нашу телеграмм-группу Инфостарт

simplewms ТСД штрихкод мобильное приложение оффлайн штрих-код

См. также

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Программист Пользователь 1С v8.3 Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Простой мобильный ТСД (терминал сбора данных) сканер для 1С для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически.

3000 руб.

22.04.2019    111087    675    203    

355

Мобильная разработка Мессенджеры и боты 1С v8.3 Платные (руб)

Теперь создать telegram-бота - элементарно. Достаточно просто нарисовать блок-схему телеграм-бота, и он сразу заработает. Это возможно при использовании Графического конструктора телеграм-ботов. Это единственный конструктор ботов для telegram, чье качество и функционал подтверждены фирмой 1С, есть сертификат 1С:Совместимо. Расширение в интерактивном режиме, с помощью блок-схем, позволяет с минимальными трудозатратами создать телеграм-ботов в любой конфигурации, работающей на платформе «1С:Предприятие 8.3».

13200 руб.

27.12.2021    48457    126    172    

224

Логистика, склад и ТМЦ Мобильная разработка 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Специализированное программное обеспечение для мобильных устройств со встроенным сканером штрихкодов. Позволяет быстро автоматизировать, оптимизировать рабочие места и бизнес процессы по учету товара в магазине. Например, приемку товара по штрихкодам или инвентаризацию прямо в торговом зале.

18500 руб.

30.05.2023    5157    4    0    

6

Мобильная разработка Сканер штрих-кода Терминал сбора данных Управляемые формы Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Сбор заказов, инвентаризация, проверка ценников, просмотр полной информации об остатках и ценах со смартфона Онлайн - все это содержит в себе решение 1С "Штрихкод-информер" (штрих-код чекер). Отправка данных со смартфона выполняется либо напрямую в открытую форму документа, отсканировав QR-код, либо в общую корзину учетной системы, не подходя к компьютеру. Кассир или оператор сможет просмотреть список присланных данных и загрузить в любую форму, поддерживающую работу с ТСД. Для работы с мобильным приложением требуется опубликовать HTTP-сервис из поставляемого расширения.

3000 руб.

03.12.2018    65933    221    106    

185

Мобильная разработка 1С v8.3 1С:Управление торговлей 11 Оптовая торговля, дистрибуция, логистика Россия Платные (руб)

"МРМ:Маркировка" для работы с конфигурациями 1С - готовое решение, позволяющее быстро автоматизировать работу учетной системы 1С на ордерном и безордерном складе при работе как с товарами, подлежащими обязательной маркировке, так и с товарами, учет которых построен на базе линейных штрих-кодов. Решение поддерживает большинство распространенных складских документов, необходимых для работы кладовщику на терминале сбора данных. Для начинающих пользователей имеется подробная инструкция по работе с приложением в разрезе видов документов.

15000 руб.

24.06.2025    1486    1    0    

2

Мобильная разработка Программист 1С v8.3 Мобильная платформа 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х Абонемент ($m)

Товары (либо другие учетные объекты) могут быть промаркированы штрихкодами либо быть без штрихкодов, но с число-буквенным обозначением (артикулом, VIN-номером и т.д.). И та, и другая ситуация не проблема для SimpleUI. Но что делать, если нет ни того, ни другого? Вообще никакой маркировки. Как можно максимально ускорить работу с таким объектами? В статье показываю новые фичи релиза и готовые для встраивания поисковые комбайны на все случаи жизни. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

1 стартмани

14.04.2025    2428    7    informa1555    0    

16

Мобильная разработка Программист 1С v8.3 Абонемент ($m)

В Simple появился еще один онлайн-режим, не через REST-API, а через веб-сокеты. Показываю, что это дает, ради чего было сделано. А также два чисто онлайновых примера с такими обработчиками еще и с использованием новой ActiveCV 2.0. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

1 стартмани

07.02.2025    5058    informa1555    3    

28
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. vdscom 21 15.08.19 14:09 Сейчас в теме
Спасибо, Дмитрий, впечатляет :)
2. informa1555 2780 15.08.19 14:11 Сейчас в теме
3. aleksey_RS 22.08.19 13:47 Сейчас в теме
(2) Дмитрий, добрый день! Никак не найти ваши контакты. Мы заинтересовались Вашей разработкой, она весьма подходит под нашу текущую задачу, но все же нужно с Вами обсудить возможность ее доработки. Могли бы вы связаться со мной по вопросу сотрудничества, приобретения Вашего продукта и его доработки. Заранее большое спасибо. (в личку не получается, все же оставлю здесь. a.gaevskiy@rslog.ru)
Для отправки сообщения требуется регистрация/авторизация