Полезные ссылки:
Новый телеграмм канал: https://t.me/devsimpleui
Он-лайн документация (которую можно выгрузить в щикарный PDF) : https://uitxt.readthedocs.io/
Режим дополненной реальности в платформе : //infostart.ru/1c/articles/1427287/
Видео о программе: https://youtu.be/G32A67Ny5Es
Мои эксперименты с OCR, распознаванием и т.д.://infostart.ru/1c/articles/1486598/, //infostart.ru/public/1159499/
Само приложение доступно в Google Play и в apk к статье
Возможности платформы
Так как система прежде всего рассчитана как рабочее место для сбора данных, предусмотрены широкие возможности ввода данных и организации интерфейса:
- Организация экранов со всеми возможными элементами ввода и отображения информации с произвольной разметкой
- Работа со штрих-кодами аппаратных сканеров или ТСД, в т.ч. подключение Bluetooth-сканеров в режиме SSP
- Распознавание штрихкодов камерой устройства
- Распознавание текста (OCR) с камеры с использованием оригинального улучшенного алгоритма
- Распознавание голоса
- Синтез речи (воспроизведение текста голосом)
- Звуковые сигналы
- Передачу GPS-координат и расшифровку мест
- Фотографирование и прикрепление из галереи
- Ввод рукописной подписи
- Печать из приложения
- Прием заказов и команд прямо на встроенный веб-сервис(не Push) напрямую, вззаимодействую я с пользователем в ральном времени
- Переключение экранов напямую с сервера или по теймеру
- Организация произвольных структур (документов) с прикреплением файлов и мультимедиа
Режимы работы
Приложение на Simple UI может работать в нескольких режимах:
Он-лайн режим тонкого клиента, где обработка и управление происходит полностью в бекенде (на стороне учетной системы). Т.е. со стороны учетной системы работает веб сервис, который принимает команды и отдает в ответах управляющие данные. Также сама конфигурация скачивается и обновляется с веб-сервиса каждый раз в момент запуска приложения. Весь обмен сводится к обмену стеком(массивом) переменных в обе стороны, которые содержат в себе и вводимые/выводимые данные и управляющие команды (например запуск экрана) Так, конструктор сделан в виде конфигурации 1С и может быть установлен на любую конфигурацию 1С в виде расширения или модуля. При этом код обработчиков можно писать прямо в «экранах» конструктора. Хранилищем данных и бекендом таким образом выступает учетная система.
Самостоятельный режим, где конфигурация хранится на устройстве и функционирует независимо от бекенда или в гибридном режиме. Обработка событий происходит командами конфигурации на устройстве. При этом приложение может работать как полностью off-line так и обмениваясь информацией с учетной системой через REST-интерфейс, т.е. сочетая различные режимы хранения и передачи данных:
- Off-line работа с собственной SQL базой используя SQL-команды. При этом с SQL можно взаимодействовать через встроенный в приложение собственный веб-сервис. Т.е. например сделать автономный ТСД на который данные (например справочник товаров) будут передаваться http-запросом со стороны учетной системы и забираться таким же способом. Например в готовых решениях есть офф-лайн решение для инвентаризации
- HTTP-запросами через REST API. Т.е. приложение отправляет запросы по событиям интерфейса которые обрабатываются на бекенде синхронно или асинхронно (для больших данных, например картинок). В конфигурации задаются команды REST, переменные передаются в теле запросов или в параметрах. В качестве бекенда может быть как та же 1С так и напрмиер Postgre SQL. Так, например на PostgreSQL c API PostgREST устроено бесплатное открытое готовое решение «Микро-WMS» которое работает как самостоятельных промежуточный бекенд между ERP системой и мобильными рабочими местами. Обработка осуществляется отправкой CRUD-команд на добавление, чтение, изменение данных в таблицах облачного бекенда, а логика частично реализована в хранимых процедурах и триггерах и также воспроизводится через RESTful API
- Совмещение этих двух режимов, где хранение в том числе происходит в СУБД на клиенте, а также реализована, например асинхронная отправка данных, отложенная отправка или просто обращения к веб сервисам по событиям приложения
- Документы – произвольные структуры данных со своим интерфейсом, которые являются одновременно контейнером хранения данных и объектом автоматической синхронизации данных и имеют автоматический интерфейс (или настраиваемые формы). Документами могут быть справочники или документы учетной системы (документы разделены по видам). Разработчик просто определяет структуру возможных и обязательных полей и включает ее в конфигурацию. Документы могут работать как самостоятельные объекты так и использоваться в интерфейсах произвольно (например справочник «Клиенты»). С технической точки зрения это произвольные json-объекты разделенные по видам и некоторым другим разделителям для которых генерируется вся инфраструктура. Так например можно настроить хранение и синхронизацию документов через облачную СУБД Postgre с автоматической синхронизацией между несколькими устройствами одного аккаунта.
Список релизов и развитие функционала
Обновление 21.11.19:
- Печать с устройства для обычных форм и для документов. Обновлено приложение, демо-база и инструкция.
Обновление 11.12.19:
-
распознавание текста
-
3 режима поиска в списке документов (по распознаванию текста, голосовой ввод, по штрих коду)
-
таблица в виде списка карточек
-
отправка оповещения на устройство в виде синтеза речи в фоновом режиме
Более подробно об этом с видео вот в этой статье: //infostart.ru/public/1166378
Обновление 20.01.20:
-
3 вида диаграмм
-
стрелочные индикаторы
-
картинки в контейнерах
-
Глобальные переменные
-
Константы
-
таймер экрана (обработчик ожидания)
-
команда управления экраном с сервера
Более подробно об этом с видео вот в этой статье: //infostart.ru/public/1179989/
Обновление 25.01.20 (обновилось только приложение, демку и инструкцию можно не скачивать):
-
Поддержка работы с Bluetooth-сканерами через bluetoоth соединение SSP (не как HID-девайс, а именно через порт). Такое соединение обладает большей надежностью и стабильностью при работе с большими штрих-кодами. Кроме того, так как не эксплуатируется клавиатура то можно на одном экране размещать текстовые поля, они не будут взаимодействовать со сканером, так как он ничего не пишет в клавиатуру. Работа с таким подключением ничем не отличается от работы в режиме "в разрыв клавиатуры" (HID-девайс), только нужно в настройках выбрать устройство и поставить галочку (сканер подключается при запуске приложения, также есть обновление соединения если сканер засыпает):
Обновление 15.02.20 (обновилась конфигурация, описание и приложение):
-
Таблицы в контейнерах: теперь можно размещать на экране сколько угодно таблиц
-
Списки в контейнерах: сколько угодно списков на экране. Например вот так
-
OData интерфейс - теперь можно не писать запросы для источников данных таблиц и списков, а писать OData запросы в одну строчку (при условии что параллельно с веб-сервисом опубликован интерфейс OData. Актуально для 1С и SAP)
Например вот так:
или так:
Для этого должен быть опубликован OData от базы:
-
План-факт для независимых экранов теперь запускает окно План-факт (как и для обычных)
-
Для всех элементов контейнера теперь можно задавать условную видимость
-
Для владельцев Pro-версии: теперь добавлено окно "О программе" в котором выводится ID приложения по которому можно получать обновления по запросу
Исправлены ошибки:
- ошибка экрана диалога - затирал переменные
- ориентация для кнопок не работала
- ошибка offline SQL
- ошибка интерфейса: перекрывание кнопок элементами
Обновление 31.03.20 (обновилась конфигурация, описание и приложение):
Статья с описанием касательно PostgREST тут: //infostart.ru/public/1217831/
Изменения:
- Функции работы с открытым и бесплатным облачным бекендом PostgREST, независимо от основной базы
- магазин конфигураций с возможностью организации собственного магазина в облаке
- функции измерения производительности
- фоновая работа с бекендом (для Pro-версии)
- Значительно улучшено распознавание текста за счет контекстно-зависимых настроек
- Исправлены ошибки:
- проблема с фотографированием
- передача больших SQL запросов теперь через POST а не в параметрах+в транзакции
- исправлена ошибка при нажатии на таблицу для не-Pro версии
Обновление 27.04.20 (обновилась конфигурация, описание и приложение):
- Функции для облачного бекенда PostgreSQL:
- обработка своих исключений/сообщений PostgreSQL, например, триггер на проверку заполнения
- получение ID добавленной записи
- организация Update записи
- организация команды Delete
- автоматическая синхронизация документов в облаке
- хранение картинок, файлов документов в отдельной таблице
- автосинхронизация внутри пользователя по разным устройствам и поддержание актуальности
- в магазине в облаке новая конфа с примерами документов
Прочее:
- Переназначение кнопки Назад в конструкторе
В новом релизе большое внимание уделено совершенствованию функций взаимодействия с PostgreSQL через REST-интерфейс и на текущий момент все CRUD-операции реализованы. А также некоторые сопутствующие функции. Например проверку корректности ввода данных логичнее всего организовать на серверной стороне, повесив триггеры на таблицы в которые осуществляется ввод. И если что то не так, то генерировать свое исключение. Например вот тут я проверяю что наименование не заполнено (в SimpleUI происходит обработка ошибки):
Вот текст кода триггера который это делает:
BEGIN
-- Проверить, что Наименование заполнено
IF NEW.name IS NULL or NEW.name='' THEN
RAISE EXCEPTION 'Наименование не может быть пустым';
END IF;
RETURN NEW;
END;
Также реализован возврат в специальную переменную ID вставленной записи (например если в таблице автонумератор и надо знать ID записи которую вы вставляете в таблицу). Также отдельно реализованы команды на удаление и обновление записи:
Теперь документы можно синхронизировать в своем облаке. Причем документы синхронизируются под своим аккаунтом на разных устройствах. Т.е. происходит поддержка актуальности всех изменений документов под одним пользователем. Вложения (картинки и файлы) при этом хранятся отдельно от JSON-структур документов. А в учетную систему документы попадают уже из PostgREST. В магазине есть конфигурация чтобы попробовать что это такое.
Обновление 09.05.20 (обновилась конфигурация, описание и приложение):
Дальнейшее углубление и развитие функций "самостоятельного режима" и теперь в поставке есть базовая SQL-WMS-система (описание готовится):
- Off-line и REST функции теперь объединены для составление одного потока команд
- REST теперь позволяет работать с любым REST-API поддерживающим JSON (не обязательно Postgre)
- команда "Вычислить выражение" - интерпретатор математических выражений с переменными
- в бекенде можно задавать свою ленту задач (кнопка ЗАДАЧИ в приложении) с запуском своих процессов
- Использование пользователя для бекенда в командах и переменных
- события можно задавать через запятую, например "Input,barcode" - 2 события на один обработчик
- клик по таблице для самостоятельного режима генерит переменные с ID, order и orderRef (чтобы сразу получить ID а не json)
И самое главное: базовая WMS на SQL в комплекте - код серверной части+конфигурация Simple UI : //infostart.ru/public/1234475/
Обновление 30.05.20 (обновилась конфигурация, описание и приложение):
Дальнейшее углубление и развитие функций "самостоятельного режима" и новые настройки программы:
- Загрузка картинок из галереи (аналогично как с камерой)
- Подсветка ШК в режиме сканирования камерой (в настройках)
- Выключение виртуальной клавиатуры полностью(в настройках)
- Другое поведение команды StartProcess - теперь это запуск нового процесса без возврата на предыдущий
- Использование произвольных логических выражений в оффлайн (пока в обычной версии, потом будет в pro) - теперь в самостоятельном режиме точно можно все!
- Команды на звуковые сигналы (100 сигналов андроида)
И самое главное - теперь документация в виде сайта в формате Sphinx/ReStruturedText - она переработана, из нее выкинуто все ненужное и оставлено только нужное, с нормальной навигацией и возможностью выгрузки красиво в PDF/EPUB
Обновление 15.07.20 (обновилась конфигурация и приложение):
Новые возможности:
- корпоративный чат через PostgREST как способ в т.ч. доставки задач до пользователя (описание в отдельной статье готовится)
- задачи через PostgREST с процессами и управляемые из процессов
- полный набор работы с JSON в самостоятельном режиме
Все это описано тут: //infostart.ru/public/1264771/
Обновление 23.07.20 (обновилось приложение):
- Теперь все приложение полностью бесплатно
Обновление 12.09.20 (обновилось приложение, демо-база, описание):
- развертывание конфигурации и настроек через текстовый файл
- сканирование настроек QR-код и запуск нужного процесса
- элемент экрана "Корзина"
- Настройка расположения текста в Таблице
Статья с описание нововведений будет тут: //infostart.ru/public/1293068/
Обновление от 07.11.2020 (обновилось приложение, демо-база, описание на подходе):
- Добавлены представления в виде списков карточек для всех режимов (как альтернатива например таблицам, также может использоваться как меню или список задач)
- Настройки главной страницы приложения
- Отключение настроек
- Расширенный инструментарий работы с JSON в самостоятельном режиме
- HTTP запросы к сторонним сервисам напрямую
- многочисленные исправления
Документация пока не обновлялась изза нехватки времени, но по демо-базе все совершенно понятно.
Подробнее об этом релизе тут: //infostart.ru/public/1322831/
Обновление от 22.01 (программа, демо-база, документация):
Большой пакет дополнений. Подробности тут: //infostart.ru/1c/articles/1357105/
Обновление от 12.02 (программа, демо-база, документация готовится):
- Теперь полноценные скрипты можно писать на Pyton 3.8 с библиотеками + появились новые виды обработчиков. Теперь можно писать обработчики любой сложности на python для оффлайн/онлайн режимов.
- Локальное хранилище конфигураций, он же стартер конфигураций и настроек подключения. Полезная информация о конфигурации, проверка подключения, версии.
- Комплекс дополнительных средств для логина: поле ввода пароля, команды на загрузку учетных данных и перезапуск клиента, переменные для получения текущих учетных данных
В демо есть исчерпывающее количество примеров, также видео https://youtu.be/TdplJaD02gU
Обновление от 11.03 (программа, демо-база, документация):
Большое количество полезных дополнений, все описано в этом посте: //infostart.ru/public/1400633/
Обновление от 17.04 (программа, демо-база, документация):
Новый режим компьютерного зрения и дополненной реальности ActiveCV. Описание тут //infostart.ru/public/1427287/
Обновление от 17.05 (программа, демо-база, документация):
Плитки, плиточные экраны, картинки из кеша и др. Описание тут: //infostart.ru/public/1441742/
Обновление от 12.06 (программа, демо-база, документация):
Фоновый сервис событий, голосовой ассистент и многое другое: //infostart.ru/1c/articles/1458666/
Обновление от 25.06 (программа, демо-база, документация):
Новая система хранения для оффлайн режима, альтернатива SQL . infostart.ru/1c/articles/1465761/
Обновление от 24.07 (программа, демо-база):
Распознавание лиц в ActiveCV , статья готовится
Обновление от 23.08 (программа, демо-база, документация):
Большой пак дополнений и исправлений: //infostart.ru/public/1502217/
Обновление 03.11 (программа, демо-база):
- новые формат хранения/обмена - самостоятельные файлы процессов
- работа с экранами и конфигурацией динамически
Подробнее тут : //infostart.ru/1c/articles/1542393/
Обновление 03.11 (программа, демо-база):
-ОRM, примеры работы с базой через ORM
Подробнее тут: //infostart.ru/public/1556433/
Обновление 25.12 (программа, демо-база, документация):
-Вывод картинок непосредственно из файлов во всех визуальных элементах - плитках, карточках, картинках на форме и т.д.
-Галерея-слайдер
-Awesome-шрифт для иконок
-Работа с файлами онлайн
-Команды бекапа базы
-Команды логирования и дампов (журнала приложения)
DB_PATH - переменная пути к SQL СУБД
_files - словарь для доступа к списку файлов
Подробнее тут: //infostart.ru/1c/articles/1576682/
28.01.2022
- Появился телеграмм канал: https://t.me/devsimpleui
Обновление 01.02.22 (программа, демо-база, документация, статья):
-обновление раздельного режима конфигурации и обработчиков
-использование нескольких конфигураций, автономные конфигурации
-переопределение главного меню
-меню экранов
-публикация конфигураций через GitHub или любой сервис
-контроль качества связи
Статья //infostart.ru/1c/articles/1597030/
Обновление 24.02.22 (программа, демо-база):
-новый подход по работе с python-обработчиками
Видео https://youtu.be/f7rA-GGjwlQ
Обновление 19.04.22 :
-новый комплект разработчика
Видео https://youtu.be/dvk94w7_xAU
Обновление 04.05.22 :
-пакет новых элементов
Обновление 14.05.22 :
-Обновление редактора
-возможности локализации решений
-автоматизация отладки
Подбробности в Телеграмм и документации с 16.05.22
Обновление 10.06.22 :
-прямая работа с NoSQL из Python https://uitxt.readthedocs.io/ru/latest/no_sql.html
Обновление 22.07.22 :
-активные элементы списков
-запоминание позиции списка
-поиск в списках
-группы в списках
-переопределение заголовков окон
-отправка данных на встроенный веб сервер
Подробнее тут: //infostart.ru/public/1698588/
Обновление 22.07.22 :
-печатные формы оффлайн
-html и JS
Подробнее тут: //infostart.ru/public/1716745/
Обновление 04.10.22 (конструктор, документация, приложение):
-векторная графика
Подробнее тут: //infostart.ru/public/1736200/
Обновление 19.11.22 (конструктор, документация, приложение):
* Улучшения customcards, customtable
* Управление видимостью и обновлением экрана
* Новое событие ПослеЗапуска
* Новые свойства контейнера: Переменная, Цвет фона, Padding и Толщина обводки
* Управление элементами из Java, Python
* Управление для ТСД Urovo
Подробнее тут (статья выйдет 21.11.22): //infostart.ru/public/1760354/
Обновление 03.02.23 (конструктор, документация, приложение):
* Новая архитектура обработчиков, хранения, запросов
* Новые команды
Подробнее тут : //infostart.ru/public/1800568/
Обновление 15.03.23 (документация, приложение):
* Воркеры
Подробнее тут (статья выйдет 15.03.23): //infostart.ru/public/1825700/
Обновление 5.04.23 (конструктор, документация, приложение):
* Обработчик runprogress
* Уведомление с прогресс-баром
* Проверка биометрии
* Диалог проверки ПИН-кода
* Плавающие кнопки
* Упрощённая поддержка автозаполнения
* Поле объекта
* BackScreen
* ShowProcessResult/FinishProcessResult, SetResultListener
* parent_screen,current_process_name,current_screen_name
* SetRed, SetGreen
* disable_events
* Переопределение поиска в тулбаре
* Открытие векторного редактора в режиме редактирования заданного файла
* Поддержка функций с произвольным числом аргументов
* Поддержка pymongo
Подробнее тут (статья выйдет 5.04.23): //infostart.ru/public/1839192/
Обновление 20.04.23 (конструктор, приложение):
*OpenCV. Описание в Телеграмм.
Обновление 17.06.23 (конструктор, приложение):
*ActiveCV Описание //infostart.ru/1c/tools/1882131/
Обновление 23.06.23 ( приложение):
*патч на приложение
Обновление 20.07.23 ( приложение,документация):
*Веб сокеты (подробности в статье)
*Исправление ошибок.
Обновление 05.09.23 ( приложение,документация):
*Работа с оборудованием и принтерами (подробности в статье)
*Исправление ошибок.
Подробности в статье
Обновление 03.10.23 ( приложение,документация):
*NoSQL SimpleBase: python-интеграция
*NoSQL SimpleBase: нативная интеграция
*работа с внешними файлами
*ручная работа с таймерами, настройками распознавания, диалогами
*улучшенный Мультисканер
*Исправление ошибок.
*и многое другое
Подробности в статье
Обновление 25.11.23 ( приложение,примеры):
-альтернативное создание экранов и визуальных элементов
Обновление 12.02.24 ( приложение,примеры):
-поддержка JavaScript
Обновление 04.03.24 ( приложение,примеры):
-упрощения для работы с Python