Упрощение Python в SimpleUI и другое

04.03.24

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

Этот релиз во многом зеркален предыдущему релизу "JavaScript в Simple" и статья местами повторяется. Так и задумано. Просто общая цель релиза – добавить еще один упрощенный подход для работы с python в SimpleUI – без внешних файлов, без работы в отдельном IDE – все через новый редактор и другие фичи для упрощения, аналогичные релизу JS. Это не замена старому подходу, а альтернатива. Для простых проектов – этого более чем достаточно. Например, все примеры к статьям я буду выпускать именно с обработчиками в виде pythonscript – так удобнее. Дополнение к статье https://infostart.ru/1c/tools/1153616/

Новый вид обработчика pythonscript


В новом редакторе (https://seditor.ru:1555/) появился новый вид обработчика - pythonscript. В отличие от других python-обработчиков, где указывалось имя функции, тут просто пишется код и все.  Не надо проваливаться в py-файл, находить функцию и т.д. Такое было в те времена, когда редактор был на 1С, но вот сейчас, с подсветкой кода от prism и другими техническими усовершенствованиями, это наконец-то стало удобно.

 

 

 

Общий модуль сразу в редакторе и использование модулей.

Скриптовый подход хорош, но где-то хранить глобальные переменные иногда все же надо. Да и какие-то общие классы и функции - тоже. В старом подходе – это модуль обработчиков или дополнительные модули. Кстати, все подключаемые дополнительные модули также могут импортироваться в pythonscript обработчиках тоже. Но чтобы не выходить из редактора во внешнее IDE, также добавлен сразу модуль для работы из редактора непосредственно.

 


Импорт делается так

import general

 

Упрощенные функции платформы, которые работают run-time.


Все функции доступны через команды-переменные, но часто это не совсем удобно. Например, надо вывести тост внутри долгого обработчика или обновлять уведомление внутри цикла, а не после выполнения такта обработчика (а стек-машина выполняет команды-переменные по окончанию такта). Поэтому я собрал все подобные функции в python- модуль android и теперь их можно использовать так.
Данный модуль доступен не только из pythonscript, но и из остальных python обработчиков

import android

android.toast("hello")


Еще раз напомню – это именно run-time на уровне системы, т.е. выполняется непосредственно.

Справочник почти аналогичен JS, просто SQL и NoSQL у пайтона доступны из других модулей.

Интерфейсные команды:

  • toast(String toast) – вывести сообщение Андроид 
  • speak(String text) – произнести текст (TTS engine)
  • listen() – запустить ожидание распознавания речи
  • vibrate() и vibrate(int duration) – вибрация и вибрация заданной длительности
  • beep()/beep(int tone)/ beep(int tone,int beep_duration,int beep_volume) – звуковой сигнал, т.ч. с возможностью выбрать тон (от 1 до 99), продолжительность и громкость (по умолчанию – 100)
  • notification(String message)/ notification (String message,String title)/ notification(String message,String title,int number) – уведомление в шторке уведомлений. Number – идентификатор уведомления, по которому к нему можно потом обратиться, чтобы либо убрать, либо перезаписать (обновить)
  • notification_progress(String message,String title,int number,int progress) – уведомление с прогресс-баром (от 0 до 100)
  • notification_cancel(int number) – скрыть уведомление

Прочее:

RunEvent(String handlers) – запустить массив обработчиков
BackgroundCommand(command) – запустить фоновую команду
stop() или stop(hashMap) – точка останова для отладки

Справочник(модуль) будет пополняться по мере развития платформы. Следите за обновлениями.

 

Пошаговая отладка в онлайн-редакторе


Тут все показано на видео. Надо сказать, что давно есть еще один способ отладки https://uitxt.readthedocs.io/ru/latest/debug.html Однако он требует определенных телодвижений каждый раз - нужно переносить функции, подлежащие отладке на сервер, чтобы обращаться к ним онлайн, в отличии от этого способа. 

Замечание: отладка не добавлена на seditor.ru, она будет работать только на локальном редакторе (надо скачать с GithHub, развернуть, запустить у себя). Лежат исходники тут и там же инструкция из 4-х пунктов: https://github.com/dvdocumentation/web_simple_editor

 

 

Python 3.11


В новом релизе включена версия python 3.11. Быстрее выполнение кода (относительно 3.8 на около 25%), новые фичи, типизация и другие улучшения. Правда с оговоркой – в комплекте разработчика 2 версии: 3.8 с OpenCV, lxml и Python 3.8 и соответственно с Python 3.11 и без означенных библиотек. На 3.11 пока 2 эти библиотеки не завелись. В Google Play – версия с python 3.11, а OpenCV туда изначально не проходила по размеру (в Google Play ограничение 100Мб). Еще раз напомню что для прод-проектов рекомендуется ставить из apk из комплекта чтобы защититься от неожиданностей (я конечно тестирую релизы, но...)

 

Упрощенная разметка полей ввода

 


Немного не в теме публикации, но штука, которая экономит время и размер конфы. Если надо добавить поля ввода с заголовком, то раньше надо было сделать 3 элемента:


1.    Горизонтальный контейнер и  в нем 2 элемента
2.    Надпись
3.    Поле ввода


Сделал для SimpleUI и SimpleWEB такое упрощение: теперь можно просто разместить 1 элемент ввода с заголовком типа <Текст заголовка>|<заполнение по умолчанию> и это будет аналогично ранее описанному варианту с контейнером+2 элемента в нем. Это доступно для всех полей ввода, кроме Современного поля ввода (у него другая суть).

 

 

 

Немного про симплификацию и прекрасное будущее


Данный релиз является логическим завершением ряда мероприятий по упрощению разработки на симпле. Этот своеобразный маневр начался со смены редактора и стека его разработки (для чего был предварительно прокачан SimpleWEB). Теперь редактор на веб, написан на SimpleWEB что дает несколько преимуществ: тот же стек разработки что и на SimpleUI – можно править под себя, это просто; под веб доступно множество фишек, такие как подсветка синтаксиса, без которой pythonsript и js обработчики смотрелись бы совершенно не так, и другие фичи, которые постепенно будут внедряться на нем; редактор доступен сразу и везде – разработчик может открыть средство разработки на любом компьютере, связать со свои устройством и начать разработку, не нужно развертывание. В целом этот стек выглядит как простой в поддержке и готовом к дальнейшему развитию. Скриптовый подход, такой как js и pythonscript имеет преимущества – не нужны другие файлы и средства разработки и ткнув на событие сразу проваливаешься в обработчик и начинаешь редактировать, все необходимое хранится в одном ui-файле и ничего, кроме браузера, не нужно, чтобы разрабатывать свое андроид или веб-приложение на Simple.

Также отмечу, что я последовательно продолжаю двигаться от энтропии к упорядоченному, повышая уровень структурированности и унификации подходов к разработке. Даже самые сложные фронтовые решения (а SimpleUI и SimpleWEB, даже если это самостоятельные приложения, в общем корпоративном ИТ-ландшафте - фронты) получаются декомпозированные до простых и однообразных скриптов и элементов.  Скрипты, будь то UI-элементы, локальное хранение(в случае с NoSQL SimpleBase) или передача данных – это по сути работа с JSON в том или ином виде и ничего больше – JSON, JSON, JSON… Это будет еще более выражено в ходе дальнейшего развития собственной СУБД и шины данных. Такая структурированность – хорошая основа для использования генеративного ИИ GPT  для генерации решений – меньше степеней свободы – меньше ошибок, проще разбираться и править то что сгенерировано.

 

Примеры к релизу, как всегда, в основной статье //infostart.ru/1c/tools/1153616/

Конечно же, Телеграм-канал проекта, в котором масса всего полезного:  https://t.me/devsimpleui

Simple python

См. также

"Штрихкод-информер" - мобильный ТСД и прайс-чекер в смартфоне

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

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

2880 руб.

03.12.2018    55349    140    102    

162

SALE! 25%

Что нам стоит бота построить? Нарисуем - будет жить! Графический конструктор телеграм-ботов/Telegram

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

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

13200 9900 руб.

27.12.2021    33966    83    159    

178

"Мобильный ТСД" - инвентаризация и сбор штрихкодов для iOS и Android

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

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

2000 руб.

22.04.2019    92642    523    186    

298

Склад 15 ВЕЩЕВОЙ - автоматизация складов с маркированным товаром

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

Программное обеспечение для автоматизации складских операций со встроенными функциями работы с маркированной продукцией. Предназначено для автоматизации всех товароучетных операций на складах, обычных и адресного хранения. «Склад 15 ВЕЩЕВОЙ» объединил в себе несколько товарных групп маркированного товара (ОБУВЬ, ОДЕЖДА, ШИНЫ, ПАРФЮМ, БАДы, ЮВЕЛИРНЫЕ ИЗДЕЛИЯ), которые чаще всего встречаются в складской логистике вместе.

33550 руб.

02.06.2023    3074    2    0    

0

Магазин 15 - приемка товара по штрихкодам или инвентаризация в торговом зале

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

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

12950 руб.

30.05.2023    3499    2    0    

4

Мобильная торговля для Android

Розничная торговля WEB-интеграция Мобильная разработка Мобильная платформа Управленческий учет Платные (руб)

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

4800 руб.

19.02.2008    42202    24    24    

40

Работа с графикой в браузере (SimpleWEB). Векторный редактор

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

В SimpleWEB добавились средства для работы с графикой и отслеживание событий мыши, в онлайн редактор https://seditor.ru:1555/ добавился «Векторный редактор» на этом API. Теперь можно нарисовать схемы складов на ПК, сделать карты (*.sug-файлы) для мобильной платформы SimpleUI, выводить данные из 1С в графическом виде. Таким образом, API для работы с векторными файлами теперь есть и в веб- и в мобильной платформе, а также средства для создания и редактирования векторных файлов есть тоже в обеих платформах.

1 стартмани

20.03.2024    1673    0    informa1555    1    

41
Оставьте свое сообщение