Архитектура 2.0 в Simple UI

Публикация № 1800568 03.02.23

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

SimpleUI Android Simple

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

Единый формат обработчиков и асинхронность

 

Все события в платформе теперь возникают в 3х ключевых точках:

  •     События экрана
  •     События ActiveCV
  •     События системы в целом. Теперь тут собраны все виды событий, а также их список расширен.

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

На любое событие платформы вне зависимости, где это событие происходит (экраны, ActiveCV, общие события платформы) можно подписать любое количество различных любых обработчиков (массив). Этот массив предполагает чередование любого количества обработчиков любых типов и режимов исполнения (синхронные и асинхронные). Этот массив можно определить в конфигурации с помощью конструктора, запустить командой, запустить по псевдониму. Он может состоять из одного действия, а может из множества.

Например, так это выглядит в конструкторе 
 

 

Строковое написание обработчика аналогично определению в конфигураторе, оно используется для запуска из кода, но и в целом проще для понимания.

Пример массива из одного простого синхронного обработчика в строковом виде:

[{"action": "run", "type": "python", "method": "post_online"}]

В общем случае синтаксис состоит из следующих элементов:

[{"action":"run[async]","type":"python|online|http|sql|…","method":handlerName|parameters","postExecute":{<handler description>}}]

где:

action – либо run либо runasync – синхроннй или асинхронный запуск

type – тип интерпретатора (где обработчик будет выполняться). На текущий момент это Python, онлайн (на стороне бекенда), нативная обработка (sql,http,set). В будущем добавятся другие исполнители

method – в случае интерпретаторов – это имя функции, также для нативных обработчиков это может быть сразу команда с параметрами

postExecute – это поле имеет смысл для асинхронных обработчиков, туда можно вставить массив обработчиков которые будут выполнены по завершению (а в нем может быть еще один массив и т.д. – рекурсия)

В старой архитектуре на любое событие экрана могло быть выполнено 2 действия в строгой очередности и строго синхронно– Python потом Онлайн. Либо одно из них либо оба. 

Это можно изобразить так в новой архитектуре:

[{"action": "run", "type": "python", "method": "open_handler"},{"action": "run", "type": "online", "method": "open_handler"},{"action": "run", "type": "python", "method": "input_handler"},{"action": "run", "type": "online", "method": "input_handler"}]

Или так бы это выглядело в конструкторе:


 

Так, чтобы что-то заполнить в Python, потом отправить в онлайн, потом прочитать результаты опять в Python – это было невозможно. Теперь возможно, более того, онлайн в силу возможных задержек желательно запускать async с постобработкой

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

Этот пример есть в демо- конфигурации.
 

 

Тут для примера в демо-базе асинхронной процедуре стоит задержка на 2с. Если вы нажмете Вперед, то сразу появится тост, хотя в массиве обработчик идет а 2й строке. Это нормально – асинхронный обработчик запустился первым, но ушел «думать», следом запускается следующий обработчик. В этом и смысл асихрона на экранах и в ActiveCV – не морозить систему, пока обработчики «думают»

 

Общие обработчики системы

 

 

Система порождает и отлавливает множество событий, которые имеют теперь единую точку входа и единый формат обработчиков.

В новой архитектуре добавилось несколько новых событий и на базе этого механизма будут появляться новые другие события. 
Вот перечень этих событий:

onLaunch  - при запуске перед формированием главного меню. Так как вызывается до формирования меню, то в этом обработчике например можно перерисовать меню или заполнить плитки. По сути заменяет таймер с периодом -1, который также можно использовать для этой цели.

onIntentBarcode – получение штрихкода через подписку на Intent на уровне платформы в целом(до экрана). Например может использоваться для работы со сканером без экранов либо для пред проверки штрихкодов. В переменные помещается: listener=”barcode”, barcode=<штрихкод>

onBluetoothBarcode – получение штрихкода от подключенного Bluetooth-сканера на уровне платформы в целом. В переменные помещается: listener=”barcode”, barcode=<штрихкод>

onBackgroundCommand – получение события onBackgroundCommand в сервисе событий, отправленного из какого то обработчика (командой-переменной BackgroundCommand ) . В listener помещается аргумент команды BackgroundCommand

onRecognitionListenerResult – события по результату распознавания речи после использования команды voice в сервисе. В переменные помещается: listener=”voice_success”, voice_result=<распознанная фраза>

onIntent – получения сообщения от другого Андроид-приложения (подписка на Intent). Из сообщения извлекаются поле “body” и помещается в переменную. Через него можно передавать данные от другого приложения.

onWebServiceSyncCommand – получения команды через встроенный веб-сервер приложения. На адрес веб-сервиса <адрес устройства>:8095 можно послать запрос GET или POST (если нужно передать данные то POST) вида http://<адрес устройства>:8095?mode=SyncCommand&listener=<произвольное название обработчика>. В эжтот момент срабатывает данное событие. Обработчик может что то поместить в переменные и все переменные отправляются назад в виде JSON объекта. Но, можно также не отправлять все переменные а переопределить ответ(напрмиер сделать не JSON а строковый) с помощью команды WSResponse

onSQLDataChange и onError возникают при выполнении любой записи в SQL если запрос идёт через SQL-провайдера (onError в случае ошибки). Таким образом можно например перехватывать записываемые данные централизованно и помещать их в очередь на отправку.

onOpenFile – событие, в котором можно получить файл, открытый приложением. С приложением можно поделиться текстовым файлом любым способом (через Поделиться… и через Открыть с помощью…) даже если приложение не открыто. При этом срабатывает обработчик и в переменные content и extra_text помещается содержимое файла и ссылка на файл.
 

Новый формат обработчиков в конструкторе

 

 

С новой архитектурой отпала нужда в множестве полей и закладок и можно переключить конструктор в режим Архитектура 2.0 (через меню), также новые конфигурации сразу создаются в этом режиме. Признак arch2 прописывается в самой конфигурации, он влияет только на вид конфигуратора. Собственно, одна из целей новой архитектуры была – сократить количество полей, сложность документации и дать единый принцип ко всей системе.

 

Подписка сразу на listener


 

 

 

Теперь необязательно писать в обработчике условие типа Если Переменные.listener=…, достаточно просто указать в конфигурации в поле listener имя нужного события, например переменную кнопки. Проведя множество кодревью, я понял, что конструкции с условиями на listener занимают много лишнего кода, теперь можно обойтись без этого. Мелочь, но делает код более читаемым.

 

При запуске/по расписанию

 

Может работать как раньше(вызывать процедуры python), но теперь имеется возможность подписать на эти события массив обработчиков, а значит, можно, например, запускать по таймеру и обычный онлайн обработчики, не только питон (и также обработчики других типов). Делается это через псевдоним. На закладке общие обработчики можно добавить обработчики без события, но с псевдонимом

При запуске, можно запускать как раньше (с периодом -1), но в большинстве случаев также подойдет общее событие onLaunch, которое, кстати, запускается до формирования меню, но после загрузки конфигурации, а значит, меню, например, можно перерисовать в этот момент. 

 

Новые управляющие команды

 

RunEvent – запускает массив обработчиков вручную

BreakHandlers – останавливает выполнение массива после какого то обработчика. Это полезно, например, для проверки ввода (аналог Отказ в 1С)

RefreshScreen – перерисовка текущего экрана без вызова события и обработчиков. Это важная команда для асинхрона – после завершения расчетов, если нужно, например, что-то обновить на экране, достаточно вызвать эту команду и все элементы экрана, которые заполнены из @переменная, будут обновлены. Если ее не вызывать, то по завершению асинхронно на экране ничего не обновится.

noRefresh – отказ от перерисовки экрана и вызова обработчиков
 

Новые принципы работы с SQL

 

Решались следующие цели:

  •  Единая точка доступа к СУБД и работа с несколькими базами
  •  Ввиду особенностей реализации SQLite под именно Android разработчики  SQLite рекомендуют реализовывать паттерн singleton для работы  с SQL, чтобы исключить параллельную многопользовательскую работу. Если не пользоваться этим принципом, то организация, например, записи из обработчика по расписанию через Python рано или поздно пересечется с обработчиком экрана, который тоже что-то записывает, и произойдет падение СУБД с потерей всех данных.
  •  Обращение к SQL не только из Python, но и, например, из онлайн обработчика и других обработчиков. Дело в том, что python требует контекста приложения, но приложение часто может быть не запущено, при этом может быть запущен сервис, который что-то скачивает или отправляет - требуется работа с SQL. Также в будущем планируются механизмы, которые тоже работают автономно без участия приложения. 
  •  Ну и, собственно, Python учить не обязательно, если речь идет о какой то простой логике с SQL. Все можно сделать из backend. Это использование SQL  в чистом виде без необходимости разбираться в еще одном языке.  
  • Кроме того, теперь все виды обработчиков, что называется, равны. Далее будут появляться новые интерпертаторы языков и новые виды обработчиков, и у них у всех будет доступ к SQL в едином стандартном виде
  • Также единая точка доступа (провайдер) порождает и общие события SQL (при записи, ошибка), которые опять же удобнее обрабатывать не на отдельных экранах, а в одном обработчике. Например, перехватывать  onSQLDataChange и писать в очередь на отправку

Можно работать с SQL через команды-переменные либо(если из python-обработчиков), использовать вызовы специального класса в явном виде. 

Вот справочник команд-переменных:

SQLConnectDatabase, параметр: имя базы. Так как указывается имя базы, предполагается, что можно использовать несколько баз, помимо дефолтной.

SQLExec, параметр: {“query”:”SQL statement”,”params”:”parameters with delimiter”} Например {"query":"create table IF NOT EXISTS goods (id integer primary key autoincrement,art text, barcode text, nom text)","params":""}. Выполняет запрос на изменение БД (все кроме SELECT), параметры в запросе указываются в неименованном виде, а в params, перечисляются через запятую. Например:

SQLExecMany, параметр:{“query”:”SQL statement”,”params”:”array of parameters”}  – выполняет запрос в  BULK-режиме с массивом из множества записей. Параметры запроса передаются в виде массива записей в неименованном виде (через ?)

Пример:
 

values=[]
    for i in range(1,3):
        record =[]
        record.append("AA"+str(i))
        record.append("22"+str(i))
        record.append("Товар через переменную "+str(i))
        values.append(record)
   
   
    hashMap.put("SQLExecMany",json.dumps({"query":"insert into goods(art,barcode,nom) values(?,?,?)","params":json.dumps(values,ensure_ascii=False)}))

SQLParameter – имеет смысл для SQLExecMany для передачи массива записей в качестве параметра из других обработчиков

SQLQuery , параметр {“query”:”SQL statement”,”params”:”parameters with delimiter”} – запрос типа SELECT, который пишет выборку в виде JSON-массива в стек переменных

Те же функции можно вызывать из импортируемого класса напрямую. Этот вариант хорош тем, что результат получаешь сразу, а не на конец шага, и его лучше использовать в python-обработчиках.

from ru.travelfood.simple_ui import SimpleSQLProvider as sqlClass
sql = sqlClass()
    success=sql.SQLExec("insert into goods(art,barcode,nom) values(?,?,?)","111222,22000332323,Некий товар")
    res = sql.SQLQuery("select * from goods where id=1","")
    if success:    
        hashMap.put("toast",res)

 

Работа с SQL напрямую через конфигурацию (обработчик SQL)

 

Можно работать с SQL не через команды-переменные и не через Python, а напрямую. Это один из «нативных» обработчиков. Я сделал его как еще одну попытку упростить разработку там, где это возможно – убрать лишний код и повысить читаемость. До «питона» у меня была попытка конструктора SQL, HTTP и установки переменных, неудачно и неудобно. Но вот сейчас я переосмыслил это полностью и предлагаю оценить еще одну попытку. Надеюсь, это будет удобно и не нужно будет лишний раз залезать в Python для чего-то простого. Как и два предыдущих варианта – этот также работает через единый провайдер со всеми вытекающими свойствами – регистрацией событий и т.д.

Данный вид обработчика удобно использовать для простых ситуаций – вытащить переменные из SQL по отбору, записать простой insert или update и т.д.

Что, например, можно делать этим инструментом:

  1.     Передавать любые поля в запрос из стека переменных через @, также как они передаются на форму. Например, этот запрос запишет в таблицу name и barcode. Это касается и переменных запроса и условий.
  2.     Select распознается как выборка и пишет результат в переменные в виде JSON-массива (такой же как если вызвать это через команду переменные или класс)
  3.     Но если в select написать limit 1 то обработчик запишет переменные 1й строки сразу в стек переменных. Удобно например при открытии сделать выборку, сразу получить переменные и привязать их на форму – без парсинга и т.е. 

 
Как видите, я постарался сделать так, чтобы работать было так же просто, как в консоли запросов.
 

Новые принципы работы с HTTP

 

Онлайн-обработчики сами по себе, но помимо выполнения онлайн-обработчиков также можно потребоваться доступ к другим REST API. Это можно делать например из Python (requests) но также предлагается еще один метод и вот его преимущества:

  • Скрыть настройки подключения, сделать удобное обращение через псевдоним соединения. Т.е. один раз где-то записываются настройки подключения к какому-то эндпоинту – URL, авторизация, заголовки, а потом в запросах можно просто упоминать этот псевдоним, за котрым это все стоит. Это способ скрыть логины и пароли корпоративной системы от компрометации
  • Совместимость с шифрованием в корпоративной  версии. Вышеперечисленные настройки в корпоративной версии хранятся в криптозащищенном хранилище
  • Также как с SQL одна из задач данного подхода – работа с запросами без python (который требует контекста, а такие вещи, как запросы, часто как раз работают без запущенного приложения, в фоне или в воркерах). 

Настройки подключения закрепляются за псевдонимом 1 раз на устройстве через команду HTTPAddAlias. Например:

hashMap.put("HTTPAddAlias",json.dumps({"alias":"odata","url":hashMap.get("url"),"headers":{"Content-Type":"application/json; charset=utf-8","Accept":"*/*"},"basic":{"user":hashMap.get("user"),"password":hashMap.get("password")}},ensure_ascii=False))


таким образом мы получаем псевдоним odata, с которым можем потом работать и к которому все привязано и скрыто внутри системы. Т.е., обращаясь к псевдониму, мы обращаемся сразу ко всем настройкам.

Например, можно написать вот такой запрос:
 

 

Тут используется строковый синтаксис:

На первом месте идет метод – GET,POST,PUT и т.д.

На втором адрес, причем начало URL (как и все остальное берется из псевдонима. Сам псевдоним записывается через #

На третьем месте может быть body. Например, JSON c переменными, причем переменные, так же как и везде – через @

Например, так можно поместить переменные из стека в тело запроса:

 

 

Работа с переменными напрямую через конструктор (обработчик SET)

 

И также можно устанавливать переменные или команды-переменные напрямую без необходимости организации отдельного обработчика. Т.е. можно выполнять простые команды, пользуясь переменными. Причины те же, что и в предыдущих нативных обработчиках. Кроме того, как выяснилось на практике, организовать вывод тоста или бипа, не залезая в python - удобно.

Правила простые:

  1.  если есть параметр, то он устанавливается через =, если нет, то пишется просто переменная без параметра. Пробелы на концах отсекаются
  2.  можно использовать сразу несколько через запятую
  3.  Также как и везде, можно обращаться к переменным через @

Например, тут устанавливаются сразу 3 переменных – toast,vibrate, speak
 

 

Прочие нововведения

 

SetSettingsJSON – команда для установки настроек в том же формате, в котором их можно загружать через файл или QR

app_shutdown – команда выключения приложения

StartCaptureCamera – запуск камеры, аналогично размещению стандартной кнопки. Только тут можно повесить на свою кнопку или какое то событие

StartMediaGallery – запуск выбора файла из галереи вручную. Также можно повесить например на свою кнопку
 

Подписывайтесь на мой телеграмм канал, чтобы быть в курсе новостей и также я туда выкладываю всякие полезные штуки: https://t.me/devsimpleui

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. quazare 3133 03.02.23 09:50 Сейчас в теме
Ребята, я хочу у вас спросить - кто занимался разработкой web-приложения на платформе (именно через браузер) - отпишитесь здесь или мне в личку.

А вообще какие сейчас используются инструменты по разработке web для браузеров
2. maksa2005 404 03.02.23 12:15 Сейчас в теме
14. van_za 184 03.02.23 14:48 Сейчас в теме
"А вообще какие сейчас используются инструменты по разработке web для браузеров"
-js, TypeScript, node js, figma, swagernpm, webpack, react, axios, redux и т.д.
15. siamagic 03.02.23 14:57 Сейчас в теме
(1) сейчас тебе накидают гумно фремворков коорые тормозят, смотрит в сторону wpa с наитивным кодом - быстро и эффективно.
16. quazare 3133 03.02.23 15:01 Сейчас в теме
(15) так я и хотел посмотреть WPA - ни одного примера не могу найти
18. lmnlmn 67 03.02.23 15:46 Сейчас в теме
(15) WPA это PWA или еще что-то новенькое появилось?
siamagic; +1 Ответить
19. siamagic 03.02.23 21:53 Сейчас в теме
(18) кому надо понял, ну дурачек для опечатки нашелся, с граммер нации американцев поясни разницу пожайлуста
20. siamagic 03.02.23 21:55 Сейчас в теме
(18)Всегда путал... спасибо тебе PWA - Пиздец Веб ...)))))))))) и оно действительно так.
3. quazare 3133 03.02.23 12:25 Сейчас в теме
(2) у меня ошибка защищенного соединения по ссылке
5. quazare 3133 03.02.23 12:28 Сейчас в теме
Все равно не могу открыть - это андройдом надо?
7. maksa2005 404 03.02.23 12:51 Сейчас в теме
(5)любой сайт открывает это.
Личный кабинет Тепломир
Личный кабинет Менеджера
МастерОк86
6. quazare 3133 03.02.23 12:36 Сейчас в теме
(4) скинь в личку как называются - погляжу
8. quazare 3133 03.02.23 13:00 Сейчас в теме
(7) посмотреть не удалось.

ну это ты сделал на андройде - платформой, я так понял. именно веб приложение, чтобы можно было открыть бараузером - на чем сейчас делают то...
9. maksa2005 404 03.02.23 13:03 Сейчас в теме
(8)а зачем? смысл? кучу денег отдать за красивый интерфейс в вебе? людям скорость нужна в работе, не красота реализации. Да 1с в webe и так обладает UI
13. John_d 4547 03.02.23 14:28 Сейчас в теме
(8) я делал ТСД на JavaScript. В статье были видео, но ютуб грохнул мой канал со всеми видео)
https://infostart.ru/1c/articles/1507241/
10. quazare 3133 03.02.23 13:07 Сейчас в теме
(9) зачем и смысл - не правильные вопросы. Вот хотелось бы посмотреть на приложения созданные именно для веб и через платформу? Есть такие? Дайте ссылку. На андройде не нужно
11. maksa2005 404 03.02.23 13:10 Сейчас в теме
(10) У меня таких нет. спроси Цифрового кота. Он много таких сделал)
12. quazare 3133 03.02.23 13:20 Сейчас в теме
(11) ждем примеры от цифрового кота
17. siamagic 03.02.23 15:04 Сейчас в теме
Выглядит максимально паршиво, как правило веб хорош для РМК, или удаленных юзерей.
Где стоит красиво вывести необходимые реквизиты и ТЧ.
При необходимости - если начинаетс яредактирование подтягиваются из кеша или с субд возможные значения выбора.
Делается через ОДата - летает вполне себе быстро, но намного проще через шттп-сервис - тоже будет универсально.

Зачем делать то что описано в статье не обозначено.
21. legioner55 05.04.23 10:58 Сейчас в теме
Добрый день! Начал разбираться с simple_editor и не могу найти в документации как производится перепривязка файлов обработчиков? Заранее спасибо.
Оставьте свое сообщение

См. также

Красивый и адаптивный дизайн мобильного приложения

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

Чтобы разработать стильное мобильное приложение на 1С, достаточно научиться верстать адаптивные интерфейсы на HTML и задействовать возможности JavaScript (JQuery). О том, как сделать на 1С красивое и современное мобильное приложение для отслеживания клиентами начисленных бонусов и отправки сообщений сотрудникам компании, на конференции Infostart Event 2021 Moscow Premiere рассказал разработчик компании ООО СТХ-Менеджмент Максим Литвинов.

19.05.2023    1960    maksa2005    38    

32

Создание формы для возможности выполнения фото в 1С

Мобильная разработка Платформа 1С v8.3 Мобильная платформа Бесплатно (free)

В этой статье мы разработаем мобильную форму для фотографирования. Реализуем доступ к фотокамере устройства.

13.04.2023    768    user1928331    2    

6

Пакет обновлений SimpleUI. Апрель 2023

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

Новые функции мобильной платформы Simple в релизе 11.42. Дополнение к статье https://infostart.ru/public/1153616/

05.04.2023    1354    informa1555    1    

32

Подкапотное пространство веб-клиента

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

Юрий Лазаренко, ведущий разработчик компании «Цифровой кот», на конференции Infostart Event 2021 Post-Apocalypse рассказал, как устроен самодельный веб-клиент, и какие практические приемы помогут эффективно интегрировать сайт с базой 1С.

30.01.2023    1796    TitanLuchs    16    

31

Мобильный клиент в ритейле. Внедрение и первые результаты использования

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

Олег Репников, руководитель департамента развития систем дистрибуции в ПАО «Вымпелком», рассказал о том, с какими сложностями можно столкнуться при внедрении в компании мобильного клиента: о реорганизации архитектуры решения, необходимости перестроения мышления всей команды разработки, и о том, что плохой код – враг мобильного клиента.

16.01.2023    1645    Repich    0    

13

Новый SimpleWEB – тот же Simple, теперь еще web

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

Представляю новый отдельный проект на старой семантике – фремйворк для создания веб приложений. Для разработчика симпла ничего не меняется – все тот же стек разработки, тот же конфигуратор и принципы разработки, но конфигурации теперь можно запускать не только на Андроид, но и в виде веб – приложений. Т.е. теперь платформы две – мобильная и веб, в два раза больше поводов перейти на этот стек разработки. Проект пока на стадии альфы, но развивается.

19.12.2022    2841    informa1555    9    

39

Думы о мобильной платформе и мобильном клиенте 1С:Предприятия

Мобильная разработка Мобильная платформа Конфигурации 1cv8 Бесплатно (free)

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

16.12.2022    1328    alexkozin    4    

6

Как на мобильной платформе 1С сделать игру. Расширяем возможности через Поле HTML Документа

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

Как вы считаете, можно ли создавать игры на мобильной платформе 1С? Независимый разработчик Никита Вельмаскин убежден – да, можно. На Infostart Event Post-Apocalypse он продемонстрировал, как работают гибридные приложения на мобильной платформе 1С и дал исходники игры, чтобы изучить все возможности веб-технологий применительно к мобильной разработке в 1С.

14.12.2022    4630    maskin    5    

37

Мобильное приложение для android: 1С vs Google

Мобильная разработка Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Тестирование скорости чтения и записи в базу данных двух мобильных приложений: разработанного на 1С и на платформе от Google.

29.11.2022    1361    serg_gres    11    

4

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

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

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

21.11.2022    1548    informa1555    0    

18

Особенности использования мобильной платформы на крупных предприятиях

Мобильная разработка Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Разработчик «Первый БИТ.Савеловский» Валерий Дыков на конференции Infostart Event 2021 Post-Apocalypse поделился своим опытом использования мобильной платформы 1С на примере крупного предприятия «Кордиант». Он рассказал, как удалось реализовать мобильное приложение для офлайн-работы с маркированными товарами, с какими проблемами столкнулись разработчики, и как их удалось решить.

02.09.2022    2581    Begemoth80    0    

13

1c8 push уведомление на Apple устройства (APN) по сертификату .p8, протокол http2

Мобильная разработка Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Отправка из 1С8 push уведомлений на APN (apple устройства) используя .p8 сертификат от Apple по протоколу http2

02.09.2022    778    eda_light    0    

7

Пакет новых элементов к Simple UI. Май 2022

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

Новые поля ввода, кнопки и т.д. Основная статья тут: http://infostart.ru/public/1153616/

04.05.2022    1176    informa1555    2    

6

Настройка рабочего места для мобильной и веб-разработки в 1С для самых маленьких

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

Совсем недавно встала необходимость подготовить рабочее место для разработки мобильного приложения на 1С, подробного гайда в интернете не нашел (может, искал плохо), поэтому решил написать свой. В конце будет один неочевидный момент, без которого "не заводится".

18.04.2022    8864    AntonChausov    16    

110

Мобильная бригада — приложение ТОиР на мобильной платформе 1С для ускорения выполнения ремонтов

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

Мобильная бригада — универсальное приложение для удаленной работы с 1С:ТОИР. Включив в свой арсенал мобильные гаджеты с приложением, ремонтная служба приобретает ряд преимуществ: ускорение приема и обработки заявок на ремонты, снижение количества ошибок предоставления и ввода данных, оперативное отслеживание изменений, немедленная обратная связь, удаленный доступ ко всей необходимой информации и повышение дисциплины. «Мобилизация» проходит быстро. Практика показала: научиться работать с помощью смартфона для линейных рабочих проще, чем освоить компьютер.

15.02.2022    1930    Desnol_Soft    10    

1

Мобильное приложение "Дорожный ассистент" для 1С

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

Пример реализации мобильного приложения для водителей грузового транспорта. Frontend: React-Native. Backend: 1С.

14.02.2022    1429    80lvlAPP    8    

9

Новые подходы к дистрибуции решений Simple UI, GitHub, переопределение меню и другое

Мобильная разработка Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

02.02.2022    1813    informa1555    10    

11

Пак дополнений к Simple UI, декабрь 2021

Мобильная разработка Мобильная платформа Конфигурации 1cv8 Бесплатно (free)

Большой пакет полезностей и красоты. Примеры к этой статье в демо-базе в конфигурации «Примеры 6». Эта статья является дополнением к основной статье https://infostart.ru/public/1153616/

27.12.2021    1303    informa1555    0    

8

Использование ORM вместо работы с чистым SQL

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

Маленькая заметка про небольшой, но полезный релиз Simple UI. Дополнение к основной статье https://infostart.ru/public/1153616/

25.11.2021    3480    informa1555    10    

27

Мобильное приложение на 1С без никого... За полчаса...

Мобильная разработка Платформа 1С v8.3 Бесплатно (free)

Мобильное приложение на коленке за полчаса без никого...

27.10.2021    18168    starik-2005    62    

131

Распознавание лиц

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

В новом релизе в режим дополненной реальности ActiveCV в платформе Simple UI добавлен новый тип детектора - распознавание лиц. Платформа детектирует лица в кадре, оправляет их на ваш сервер распознавания (написанный на открытом скрипте на python) получает ответ в виде идентификатора, а дальше отображает в видеопотоке и вписывает их в логику вашего приложения. Таким образом хранение семплов, выбор и настройки алгоритмов распознавания и сам сервер находится за пределами платформы, открыт и построен на бесплатных технологиях. Данный пост является дополнением к основной статье https://infostart.ru/public/1153616/

26.07.2021    3739    informa1555    9    

39

Мобильное приложение для учета личных финансов

Работа с интерфейсом Мобильная разработка Мобильная платформа Домашние учет и финансы Россия Управленческий учет Бесплатно (free)

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

08.07.2021    4023    coollerinc    23    

12

Фоновый сервис событий в Simple UI. Релиз Июнь 2021

Мобильная разработка Платформа 1С v8.3 Бесплатно (free)

В новом релизе появился постоянно висящий в памяти сервис для обработки внешних событий – штрихкодов, голосового ввода, сообщений от других программ и внутренних процессов. Который может управлять программой поверх стандартных процессов – что то спрашивать голосом, что то озвучивать(ассистент), показывать диалоги, запускать процессы и экраны, отправлять управляющие команды. С помощью этого можно получить многоплановый интерфейс и более удобное взаимодействие с пользователем не только через экран и ввод, но и с помощью событий голосового ввода и других средств взаимодействия. Эта статья является дополнением к основной статье по Simple UI: https://infostart.ru/public/1153616/

15.06.2021    3158    informa1555    0    

18

Мобильный сканер и ТСД для сбора штрихкодов, кодов маркировки и просмотра информации о них

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

Расширение для 1С:УТ 11, КА 2, ERP 2, реализующее взаимодействие 1С с мобильным приложением "Штрихкод Коммандер", доступном в AppGallery (рекомендуется в России) и в Google Play на смартфонах и Терминалах Сбора Данных. Расширение публикует HTTP-сервис, благодаря чему при сканировании штрихкодов (например, кодов маркировки GS1 Data Matrix, EAN) на устройстве в приложении "Штрихкод Коммандер" моментально видны актуальные цены и остатки, а в учетной системе возможно заполнение табличных частей товаров в документах и обработках.

07.06.2021    9784    190    Tamadosky    25    

27

Релиз Simple UI май 2021: плиточные экраны, плиточное главное меню, картинки из кеша, новое взаимодействие с ТСД и т.д.

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

В релизе Simple UI 5.75.00 добавлен новый вид интерфейса – «плитки» и возможность переопределения стартового экрана, а также другие нововведения. Также важное нововведение - новый режим взаимодействия с некоторыми моделями ТСД - через подписку на сообщения. Дополнение к основной статье: https://infostart.ru/public/1153616/

17.05.2021    3575    informa1555    0    

22

1С в мобильном и лицензионная политика

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

На екатеринбургском онлайн-митапе заместитель директора НП ППП и руководитель мобильного направления в фирме «1С» Анна Лавринова рассказала о мире мобайла в сфере 1С, примерах мобильных приложений и особенностях их лицензирования.

31.03.2021    3088    1C_lava    4    

2

Как избавиться от горизонтальных серых разделителей (полосок) между элементами в форме мобильного приложения

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

На профильных форумах часто возникает вопрос, как избавиться от горизонтальных полос-разделителей между элементами на формах мобильного приложения. Часто предлагают использовать декорации или html-поле. Однако, есть простое решение.

17.03.2021    2757    kholodarev    9    

7

Большой пак дополнений март 2021: регламентные задания, распознавание дат и чисел, оповещения, поля с автозаполнением и многое, многое другое

Терминал сбора данных Мобильная разработка Платформа 1С v8.3 Бесплатно (free)

Релиз с огромным количеством дополнений. Дополнение к основной статье Simple UI: https://infostart.ru/public/1153616/ Перечень изменений: 1. Оптическое распознавание дат в разных форматах 2. Оптическое распознавание чисел в разных форматах 3. Запуск кода из кода синхронно/асинхронно в фоне (Python) 4. Регламентные задания с расписанием от 1 мс 5. Всплывающие сообщения 6. Уведомления из любого контекста простые 7. Уведомления с ответом (для Anroid начиная с Oreo) 8. Поле ввода с событием на каждый символ 9. Поле ввода с автозаполнением (предварительно передается список) 10. Новый настраиваемый диалог ввода и работа с ответами диалога 11. Работа с речью и голосом из любого контекста А также изменения в документации. В данную статью не вошло описание системы группового администрирования и мониторинга.

11.03.2021    3078    informa1555    20    

24

Подпись в мобильном приложении без установки дополнительного ПО

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

Получение подписи клиента в мобильном приложении. Используется SignaturePad отсюда https://github.com/szimek/signature_pad Рабочий пример.

25.02.2021    4645    61    v4063    2    

24

Ультрабюджетная автоматизация рабочих мест с Raspberry Pi. UPD добавлены исходники и новые функции

Мобильная разработка Платформа 1С v8.3 Бесплатно (free)

Речь идет не о полноценной замене 1С, а о так называемых АРМ-ах (или информационных киосках) для участков производства, складского учета, постов печати и других мест где требуется небольшой набор жестко регламентированных операций и не требуется всей сложности платформы (скорее даже наоборот – чем проще тем лучше). Условного говоря – «компьютер со сканером» или «киоск с тач-интерфейсом», но не на мобильном устройстве а в виде стационарного поста. Теперь доступны клиенты для Linux Debian (и заодно для Windows 64) для стационарных рабочих мест для платформы Simple UI. Т.е. экосистема включавшая до этого только мобильные устройства, расширена стационарными ПК и рабочими станциями на Arm и x86 архитектурах.

27.01.2021    18511    88    informa1555    50    

55

Большой пакет дополнений для Simple UI - январь 2021

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

В этот раз множество полезных нововведений в мобильной платформе, исправлено все, о чем просили, а также прибрался в документации, актуализировал конструктор на 1С (с учетом текущих изменений, а также скорого выхода стационарного клиента) и переснял видео по-новому. Конструктор на платформе 1С:Предприятие 8.3.13.1865. Данный пост является дополнением к статье  https://infostart.ru/public/1153616/

22.01.2021    1791    informa1555    9    

8

Мобильный HTML-интерфейс, взгляд изнутри

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

Для реализации красивого интерфейса в мобильном приложении 1С удобно использовать возможности стека HTML / CSS / JavaScript. О том, как построить отзывчивый HTML-интерфейс с перехватом событий и выполнением JavaScript-кода в поле HTML-документа на форме 1С, рассказал сотрудник отдела мобильной разработки в компании «1С-Рарус» Роман Сухоруков.

28.12.2020    6931    ingeneerz@gmail.com    17    

35

Младший брат Большого Брата? (управляем мобильным устройством с компьютера)

Мобильная разработка Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Сначала эта публикация задумывалась как небольшой обзор средств для облегчения жизни при мобильной разработке на 1С, но постепенно она переросла в ответ на вопрос, заданный в статье на Хабре: "Кто в доме хозяин: ПК, ноутбук, смартфон или… планшет?" Спойлер: это не они. Тех, кто заинтересовался, прошу под кат…

14.12.2020    2070    capitan    6    

9

Сравнение мобильных технологий сканирования штрихкодов

Сканер штрих-кода Мобильная разработка Платформа 1С v8.3 Бесплатно (free)

В статье приведены результаты тестирования и сравнение популярных мобильных технологий сканирования штрихкодов

23.11.2020    3772    MaramOyka    8    

11

Ноябрьский релиз Simple UI: списки карточек для всех режимов работы и много полезного

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

В новом релизе Simple UI добавлены режимы представления информации в виде настраиваемого списка карточек (в альтернативу таблице или списку) для любых источников – формируемого из 1С, оффлайн и из REST-интерфейса напрямую. Расширен набор методов для обработки JSON в самостоятельном режиме и настройки для работы с HTTP запросами напрямую (не через настройки) а также множество других полезных нововведений. Основная статья по Simple UI : https://infostart.ru/public/1153616/ Платформа 1С: Предприятие для демо-базы : 8.3.14.1865.

09.11.2020    2232    informa1555    2    

6

[mobile] Переносим HTML интерфейс на 1С

Работа с интерфейсом Мобильная разработка Платформа 1С v8.3 Мобильная платформа Конфигурации 1cv8 Бесплатно (free)

Разберем методы переноса HTML интерфейса на 1С на примере реализации нижнего меню для мобильного приложения. Сравним методы между собой. Данные методы можно применять не только для мобильной разработки, но и для веб-клиента и т.д

02.11.2020    13680    leobrn    82    

106

Обзор мобильного приложения 1С и лицензионная политика

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

Все больше задач и бизнес-процессов решается с помощью мобильных приложений. Одно подсчитывает калории, другое – показывает руководителю, сколько сделок заключено по итогам месяца, третье – используется как канал связи между клиентом и заказчиком. О плюсах разработки мобильных приложений на платформе 1С рассказала заместитель директора НП ППП, координатор по вопросам защиты ИС 1С Анна Лавринова.

12.10.2020    10204    1C_lava    51    

21