Оффлайн-режимы в 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С:Конвертация данных Платные (руб)

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

13200 руб.

27.12.2021    38190    108    161    

201

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

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

3000 руб.

03.12.2018    59284    192    103    

172

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Программист Пользователь Платформа 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. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически.

2000 руб.

22.04.2019    97207    586    189    

321

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

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

3450 руб.

28.04.2023    9466    15    0    

9

Мобильная разработка Платформа 1С v8.3 Конфигурации 1cv8 Финансовые услуги, инвестиции Управленческий учет Платные (руб)

Мобильное приложение и конфигурация 1С для автоматической торговли на бирже через API Тинькофф банка. Достаточно задать настройки, нажать «Пуск», и робот сам торгует ежедневно.

7000 руб.

25.05.2022    4643    1    0    

6

Мобильная разработка WEB-интеграция Программист Мобильная платформа Абонемент ($m)

Экспериментальный релиз и простенький скрипт к нему закрывает потребности в любых видах синхронизации между устройствами Simple и между Simple и бек-системами (например 1С). По сути – это очень простой python-скрипт, который можно запустить на доступной машине, сервере или VPS и он будет связывать клиентские устройства между собой и с 1С или другими бек-системами. В самой платформе появилось для этого множество доработок для поддержки стабильного постоянного соединения, докачки больших файлов и работе в фоне. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

1 стартмани

23.08.2024    1214    6    informa1555    1    

13

Мобильная разработка Мобильная платформа Абонемент ($m)

В этом релизе собрано много нового из области интерфейса, связи, хранения и важные новые способы управления. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

1 стартмани

25.06.2024    2603    29    informa1555    0    

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