Каталог решений - Файлы-процессы, динамическая работа с формами и многое другое в Simple UI. Ноябрь 2021

Файлы-процессы, динамическая работа с формами и многое другое в Simple UI. Ноябрь 2021

Файлы-процессы, динамическая работа с формами и многое другое в Simple UI. Ноябрь 2021

В наличии

Новый виток развития платформы дает новые возможности — теперь самостоятельными могут быть не только конфигурации, но и отдельные процессы в виде файлов, как «excel» или подобные форматы, только заточенные под оборудование, с питоном, VR и прочими плюшками. А предыдущий перевод конфигурации на JSON дает возможность динамически менять формы экранов и вообще все в конфигурации, включая обработчики. Статья — приложение к основной статье по Simple UI https://infostart.ru/public/1153616/

Категория:

Описание

Динамическое изменение/генерация экранной формы.

Вся конфигурация, и экран не исключение, представляет из себя JSON-объект, поэтому можно динамически (т.е. не постоянно, а только на момент вызова) менять содержимое экрана – добавлять кнопки поля ввода и т.д., просто изменяя JSON-структуру экрана. Нет необходимости в каких-то специальных методах – только JSON. Также экран может быть полностью пустой и генерироваться полностью в «При открытии». Это не так удобно, как в конструкторе, но в некоторых случаях (например добавить кнопку в зависимости от условия) это сделать проще чем рисовать отдельную форму. Также, может быть, неких элемент наследования – взяли форму, что то убрали, что то добавили не меняя исходную форму.
JSON можно формировать любым способом – заготовить заранее варианты, менять существующий. Для применения конечного варианта используется команда setJSONScreen В качестве параметра передается JSON-структура

 

Командой getJSONScreen в переменную JSONScreen можно запросить исходную структуру текущего экрана. Это удобно когда нужно чтото поменять – например убрать какие то элементы
В демо базе, в конфигурации «Примеры элементов 5» есть пример динамического добавления кнопок. Тут сначала читается JSON-структура экрана,  а потом копируется одна кнопка и делается 5 кнопок и применяется:

Динамическое изменение конфигурации на лету

Можно менять конфигурацию динамически, то есть на время вызова до следующего считывания – добавлять или убирать процессы, заменять обработчики, формы – полностью все что есть (включая например пример из предыдущего абзаца). То есть конфигурация будет работать с вашими изменениями до тех пор, пока не загрузится из источника. Но дело в том, что изменения можно устанавливать и «При запуске», таким образом изменения будут столько сколько нужно.  Это может быть полезным для того чтобы к примеру отключить из меню какие то процессы, не доступные пользователю.

Команды:

getJSONConfiguration  — считывает в переменную _configuration текущую конфигурацию
setJSONConfiguration — применяет измененную конфигурацию немедленно.

 

Файлы-процессы .suip

 

Платформа Simple UI поддерживает разные варианты хранения и транспортировки данных – в SQL устройства, в NoSQL устройства, в документах и непосредственно на сервере при он-лайн варианте работы (хранение) и различные виды запросов, он-лайн команды, обмен файлами, документами (транспорт). Сейчас добавляется новый вид хранения/транспортировки – «файлы-процессы».  Это текстовый файл, состоящий из JSON-строки который включает в себя все необходимое для работы:
•    Структуру процесса, со всеми обработчиками и т.д.
•    Данные процесса, которыми он может пользоваться и менять, записываю туда же – в файл
•    Необходимую информацию для отображения внутри системы – дата последнего изменения, обложка и т.д.
То есть данные и механизмы ввода и обработки данных инкапсулированы в одном объекте.

Таким образом – это как бы самостоятельная мини-конфигурация сразу с данными и всем необходимым в виде suip-файла которую можно послать получателю, который не имеет доступа к вашему веб-сервису и каки либо других настроек, а просто может открыть, поработать и закрыть файл сохраним в свою очередь свои данные и отправить пользуясь инфраструктурой своего устройства. Это можно сравнить с Excel с макросами или PDF-формами и чем то подобным, но с возможностями Simple UI – работа с оборудованием, питоном, дополненной реальностью, AI-штуками и т.д. 
Использование существующей инфраструктуры хранения и доставки – это главное удобство такой архитектуры. Например можно использовать мессенджеры или почту где помимо самого suip-файла может быть в произвольном виде описаны пояснения по работе процесса, получена обратная связь
Файлы можно передавать различными способами – как через Интернет, так и например через Bluetooth, при этом не надо пробрасывать вебсервис основной системы наружу.

Работа с suip-файлами

В файлы процессы можно паковать как обычный процесс (с экранами) так и ActiveCV процесс
Регламентируется наличие двух обязательных объектов в корне JSON:
"SimpleUIProcess" – структура процесса
«data» — все данные

Пример файла-процесса:

 

has been added to your cart:
Оформление заказа