Пакет дополнений к 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.х Управленческий учет Платные (руб)

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

3000 руб.

03.12.2018    62425    213    103    

181

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

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

13200 руб.

27.12.2021    42188    119    167    

214

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

336

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

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

7000 руб.

25.05.2022    6281    2    0    

6

Мобильная разработка Программист Платформа 1С v8.3 Мобильная платформа 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х Абонемент ($m)

Товары (либо другие учетные объекты) могут быть промаркированы штрихкодами либо быть без штрихкодов, но с число-буквенным обозначением (артикулом, VIN-номером и т.д.). И та, и другая ситуация не проблема для SimpleUI. Но что делать, если нет ни того, ни другого? Вообще никакой маркировки. Как можно максимально ускорить работу с таким объектами? В статье показываю новые фичи релиза и готовые для встраивания поисковые комбайны на все случаи жизни. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

1 стартмани

14.04.2025    1407    4    informa1555    0    

15

Мобильная разработка Программист Платформа 1С v8.3 Абонемент ($m)

В Simple появился еще один онлайн-режим, не через REST-API, а через веб-сокеты. Показываю, что это дает, ради чего было сделано. А также два чисто онлайновых примера с такими обработчиками еще и с использованием новой ActiveCV 2.0. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

1 стартмани

07.02.2025    3665    informa1555    3    

28

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

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

1 стартмани

23.08.2024    1912    6    informa1555    1    

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