Пакет дополнений к Simple UI. Ноябрь 2022

21.11.22

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

На этот раз сборная солянка, всего понемногу, но полезное: еще одна итерация улучшений по спискам, возможности кастомизации элементов интерфейса, специальные возможности для Urovo, общие возможности управления видимостью и даже новый вид события. Данная статья является дополнением к публикации https://infostart.ru/public/1153616/

Еще раз по спискам

 


В симпле есть «Таблица», но вот беда – при количестве строк больше 1000 тормозит, потому что сделана не на RecyclerView. В тоже время в есть «списки карточек», customcards и customtable – они быстрые, красивые, но внешне не похожи на классическую «таблицу». Поэтому customtable решено было доработать, чтобы при желании она становилась похожа на Таблицу и выполняла те же функции. Первое, чего не хватало, – рамок и убрать расстояние между элементами, чтобы строки слились. Customtable подразумевает, что каждая строка- контейнер, но в контейнере нет этих свойств - пришлось добавить (также до кучи добавился Цвет фона, раньше не было)

 


Еще в «Таблице» есть шапка и можно раскрашивать определенные ячейки или строки в нужные цвета, а у customtable – единый шаблон на всю таблицу. Решение такое – в нужных элементах (которые надо отрисовать по-другому) просто добавляете элемент _layout – который начинает действовать для этой строки. Вы можете скопировать основной и поменять в нем только фон, можете изобразить «шапку», а можете сделать совершенно другой состав элементов. Т.е. получается теперь customtable и customcards каждая строка списка может иметь свой уникальный дизайн, если так хочется. Это, пожалуй, самое мощное нововведение по спискам.

 

 

Новое по управлению интерфейсом

 

1.    Появился флаг noRefresh – специальная команда, при которой обработчик выполняется, но перерисовка интерфейса не происходит. Без параметров. Пример hashMap.put("noRefresh","")

2.    Появилось общее управление видимостью через команду Show_ - тут лучше посмотреть динамический пример Управление видимость в демке, чтобы понимать, как это устроено. Суть в том, что к любому элементу можно применить 3 видимости: 1 – виден, 0 - невидим без освобождения места и -1 – невидим с освобождением места

3.    Появился обработчик «После запуска» в дополнении к ПриЗапуске, который срабатывает, когда все элементы отрисованы

4. Появились общие java-классы из питона, с помощью которых можно получить любой элемент, контейнер и контекст экрана. Об этом далее

5. Добавились переменные контейнеров (теперь у всех элементов есть переменная, она же - ID элемента). У контейнеров появился цвет фона, границы(обводка), отступы

 

Кастомизация интерфейса #1

 


Иногда очень хочется условно «сделать кнопку круглой», а в симпле они как назло квадратные. Это можно. Я даже попытался упростить этот процесс, но для этого надо обратиться к Java и AndroidSDK прямо из питона. "Еще и Java …", звучит не очень «симпл», да? Ну, это цена за оригинальность. 

Этот и следующий раздел – только из питона. В онлайн обработчиках такое не пройдет.

Для получения любого элемента интерфейса, выведенного на экране, включая контейнеры используется симпловский метод getView(<ИД>), где ИД - переменная элемента.

 

Кастомизация интерфейса #2

 

 

Можно добавлять свои элементы и вообще абсолютно любые java-классы из Android-SDK. Например, в симпле нет "переключателя", есть только флажок.

Можно добавить, вот таким кодом.

 

    from ru.travelfood.simple_ui import ImportUtils as iuClass
    from android.widget import Switch
    from android.widget import TextView



    sw = Switch(iuClass.getContext())
    sw.setText("Какой то параметр 1")
    
    l1 = iuClass.getView("left")
    l1.addView(sw)

    sw2 = Switch(iuClass.getContext())
    sw2.setText("Какой то параметр 2")
    
    l1 = iuClass.getView("right")
    l1.addView(sw2)

 

Помимо getView() чтобы получить контейнер, куда добавлять, добавилась еще команда получения контекста getContext() (без нее java-классы не работают)

Помимо визуальных классов, можно использовать любые другие классы.

 

Подключение любой библиотеки Python к конфигурации

 

 

Тут не релиз, просто способ, как это сделать. Для примера я подключил библиотеку pygul, которая создает красивые диаграммы. Ее я выбрал потому, что в ней меньше всего зависимостей.

1. Скачиваете whl-файл вот таким образом

 

 

2. Добавляете в Медиафайлы

 

 

3.Для импорта вставляете вот такой кусок

    import zipfile
    import sys
    import os
   
    whlPath =  suClass.get_stored_file("pygal")
    targetDir = suClass.get_temp_dir()
    sys.path.append(targetDir)
    with zipfile.ZipFile(whlPath, "r") as whl:
        whl.extractall(targetDir)
    sys.path.append(os.path.join(targetDir, 'pygal'))
    import pygal # вуаля - тут уже сам импорт как есть 

4. Это все,  можно пользоваться классами. Вот так в 2 строчки создается диаграмма:

bar_chart = pygal.Bar()                                            # Then create a bar graph object
bar_chart.add('Fibonacci', [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55])  # Add some values

В целом библиотека хорошая, много видов диаграмм и работать просто.

 

 

Специальные функции для ТСД Urovo

 

Помимо сканирования штрихкода, можно управлять сканером - запускать/останавливать сканирование, ставить блокировку на сканер, получать статусы. Это только для устройств Urovo.

Пример есть в конфе примеров к этому выпуску, а тут можно посмотреть короткое видео, как это работает:

 

 

 

 

Simple Android ТСД

См. также

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

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

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

2880 руб.

03.12.2018    55103    139    102    

162

SALE! 25%

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

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

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

13200 9900 руб.

27.12.2021    33832    82    159    

177

"Мобильный ТСД" - инвентаризация и сбор штрихкодов для 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    92419    520    186    

297

Магазин 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    3468    2    0    

4

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

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

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

1 стартмани

20.03.2024    1635    0    informa1555    1    

41

Зачем нам 1С:Элемент

Мобильная разработка Языки и среды Бесплатно (free)

Flutter может быть использован с 1С:Предприятием для разработки кроссплатформенных мобильных приложений, обеспечивая единый интерфейс и функциональность на устройствах под управлением iOS и Android. Это позволяет создавать приложения с высокой производительностью благодаря использованию собственного движка рендеринга Flutter. Интеграция Flutter с 1С:Предприятием позволяет создавать мобильные приложения любого уровня сложности, интегрировать их в корпоративные информационные системы, а также реализовывать бизнес-логику

19.03.2024    9479    ROk_dev    67    

41

JavaScript в Simple

Мобильная разработка Бесплатно (free)

В SimpleUI и SimpleWEB, наряду с обработчиками на python и онлайн (1С и т.д.) добавляется интерпретатор JavaScript. В андроид платформе он скорее играет на поле python, т.к. является оффлайновым решением для самостоятельной обработки и расширяет аудиторию разработчиков для разработки самостоятельных решений. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

12.02.2024    1694    informa1555    0    

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