Нано HTTP сервер - внешняя компонента для мобильного приложения 1C, на Android

Публикация № 1252017

Разработка - Разработка внешних компонент

Нано HTTP сервер на терминале сбора данных "ATOL Smart.Lite android 7.0". Работает только с GET и POST запросами. Аутентификация BASE64. Не поддерживает HTTPS и не передает файлы. В прикрепленном архиве исходники на компоненту (С++ и java для Android Studio 3.6.2), ЦФ - мобильного приложения и тестовая обработка.

Так как у мобильного приложения 1С нет HTTP сервисов решил написать свой. 

На чем я работал:

1. Android Studio 3.6.2

2. Мобильное приложение 1С 8.3.16.142

3. 1С:Предприятие 8.3 (8.3.17.1386)

Начнем с описания функционала:

// Описание: Функция запускает сервер.
// Параметры:
//Не обязательные.
//  Порт  - число. Порт который слушает сервер. 8080 по умолчанию.
//  Имя, Пароль - строки.
//  Если не заполнены значит нет аутентификации
//Возвращает указатель на Сервер - пустая строка ошибка создания.
СтрокаУказатель = Компонента.CreateHttpServer(Порт, Имя, Пароль)

// Описание:  функция отвечает на запрос
// Параметры:
//  обязательные.
//	Сокет- строка. Указатель на клиентский сокет - получается из запрос HTTP
// Не обязательные.
//  КодОтвет - СТРОКА. если не заполнено тогда "200"
//  Данные   - СТРОКА. если не заполнено тогда ""
// Возвращает количество отправленных байт если <= 0 то ошибка.
ОтправленоБайт = Компонента.SendAnswer(Сокет, КодОтвет, Данные)

// Описание: Количество подключенных к серверу клиентов
Число = Компонента.ClientCount;

// Описание: Данные интерфейса IP (только когда запущен сервер)
JSONСтрока = Компонента.IPConfig;

// Описание: Отладка можно посмотреть версию
JSONСтрока = Компонента.InfoString;

1. Подключение стандартное ниже на скрине.

Важно:

Во время настройки Web-публикации следует провести следующее действие. В настройках http-сервера необходимо добавить типы MIME для следующих расширений:

  • .so
  • .apk

Тип MIME: application/octet-stream

2. Проверим.

 

2. Написал обработку с двумя кнопками. Запустил на УТ.

код обработки:


Процедура КнопкаВыполнитьPOST(Кнопка)
	
	Попытка
		Запрос = Новый Запрос;
		Запрос.Текст = 
			"ВЫБРАТЬ
			|	Номенклатура.Ссылка,
			|	Номенклатура.Наименование,
			|	Штрихкоды.ПредставлениеШтрихкода
			|ИЗ
			|	РегистрСведений.Штрихкоды КАК Штрихкоды
			|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
			|		ПО Штрихкоды.Владелец = Номенклатура.Ссылка
			|ГДЕ
			|	НЕ Номенклатура.ЭтоГруппа";
		
		Выборка = Запрос.Выполнить().Выбрать();
		// Создаем строку с данные  JSON выборка примерно 45000 элементов
		JSONДанныеПередачи = СоздатьСтрокуJSON(Выборка);
		
		Если HTTPСоединение = Неопределено Тогда
			HTTPСоединение = Новый HTTPСоединение("192.168.0.98", 8080, "Админ", "123");
		КонецЕсли;	
		
		HTTPЗапрос = Новый HTTPЗапрос("/HTTPTest/Post?Номенклатура=" + КодироватьСтроку(НоменклатураСсылка,СпособКодированияСтроки.КодировкаURL) + "&Индекс=" + Индекс);
		
		//добовляем заголовки к запрос
		//к сожеления не поборол руские буквы в заголовках поэтому нужно использовать функцияю КодироватьСтроку
		HTTPЗапрос.Заголовки.Вставить(КодироватьСтроку("КомандаЗаголовок",СпособКодированияСтроки.КодировкаURL)
		                             ,КодироватьСтроку("Выгружаем номенклатуру",СпособКодированияСтроки.КодировкаURL));
									 
		HTTPЗапрос.Заголовки.Вставить(КодироватьСтроку("ДатаЗапроса",СпособКодированияСтроки.КодировкаURL),ТекущаяДата());
		HTTPЗапрос.Заголовки.Вставить(КодироватьСтроку("Количество",СпособКодированияСтроки.КодировкаURL),Выборка.Количество());
		
		
		HTTPЗапрос.УстановитьТелоИзСтроки(JSONДанныеПередачи);
		HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
		Сообщить(Строка(HTTPОтвет.КодСостояния) + Символы.ПС + HTTPОтвет.ПолучитьТелоКакСтроку());
		Индекс = Индекс + 1;	
		
   Исключение
      Сообщить(ОписаниеОшибки());
   КонецПопытки;
   
КонецПроцедуры

Процедура КнопкаВыполнитьGET(Кнопка)
	
	Попытка
		//подключение к нашему серверу
		Если HTTPСоединение = Неопределено Тогда
			HTTPСоединение = Новый HTTPСоединение("192.168.0.98", 8080, "Админ", "123");
		КонецЕсли;	
		
		HTTPЗапрос = Новый HTTPЗапрос("/HTTPTest/Get?Номенклатура=" + НоменклатураСсылка + "&Индекс=" + Индекс);
		
		//добовляем заголовки к запрос
		//к сожеления не поборол руские буквы в заголовках поэтому нужно использовать функцияю КодироватьСтроку
		HTTPЗапрос.Заголовки.Вставить(КодироватьСтроку ("КомандаЗаголовок",СпособКодированияСтроки.КодировкаURL) ,КодироватьСтроку("Родитель",СпособКодированияСтроки.КодировкаURL));
		HTTPЗапрос.Заголовки.Вставить(КодироватьСтроку ("ДатаЗапроса",СпособКодированияСтроки.КодировкаURL),ТекущаяДата());
		
		//Выполнили метод
		HTTPОтвет = HTTPСоединение.Получить(HTTPЗапрос);
		//Обработка ответа
		Сообщить(Строка(HTTPОтвет.КодСостояния) + Символы.ПС + HTTPОтвет.ПолучитьТелоКакСтроку());
	Исключение
      Сообщить(ОписаниеОшибки());
	КонецПопытки;
	
КонецПроцедуры

3. Написал обработку события на сервере в мобильное приложение 1С.

код обработки:


Процедура ОбработкаВнешнегоСобытия(Источник, Заголовоки, Контент)
	
	Если Источник = "MALhttpserver" Тогда
		
		//Обычное преобразование JSON в сооответсвие заголовков
		ДанныеЗапроса = JSONМодуль.СоздатьСтруктуруИзAndroid(Заголовоки, Истина);
		
		//Так как событие асинхронное то и пришлось добавить ид сокета для ответа.
		КлиентСокет = ДанныеЗапроса.Получить("ClientSocket");
		//Сам запрос 
		Запрос = ДанныеЗапроса.Получить("Inquiry");
		
		Если Запрос = "HTTPTest/Get" Тогда
			
			//Просто отвечаем 
			глHTTPServer.SendAnswer(КлиентСокет,"200","Привет я тебя понял)");	
			
		ИначеЕсли Запрос = "HTTPTest/Post" Тогда 	
			
			//Разбераем данные клиента
			СтруктураКонтент = JSONМодуль.СоздатьСтруктуруИзAndroid(Контент, Ложь);
			
			//создаем строкуJSON из входного масива
			ЗаписьJSON = Новый ЗаписьJSON;
			ЗаписьJSON.УстановитьСтроку(Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет));
			ЗаписатьJSON(ЗаписьJSON, СтруктураКонтент.Номенклатура);
			ОтветСтрокаJSON = ЗаписьJSON.Закрыть();
			
			
			//Отвечаем массивом обратно, а 201 просто так захотелось.
			глHTTPServer.SendAnswer(КлиентСокет,"201",ОтветСтрокаJSON);	
			
		Иначе 
			глHTTPServer.SendAnswer(КлиентСокет,"404","Нет токой страници!");	
		КонецЕсли;	
		
	КонецЕсли;	
	

3. Посмотрим точки останова.

В обработке запущенной на УТ нажимаем кнопку "отправить GET запрос" . На сервере(мобильное приложение 1С)  возникает внешнее событие:

Сервер отвечает и вот его ответ:

Теперь в обработке запущенной на УТ нажимаем кнопку "отправить POST запрос" . На сервере(мобильное приложение 1С)  возникает внешнее событие:

Сервер отвечает и вот его ответ:

4. Ну пожалуй все.

В Архиве исходники на  компоненту ,сf , и тестовая обработка . В папке package уже готовый zip для компаненты. Все исходники для android написаны под Android Studio 3.6.2. Все, что нужно, само подгрузится. 

Скачать файлы

Наименование Файл Версия Размер
Внешняя компонента нано HTTP сервер. + Исходники

.zip 17,94Mb
22.06.20
5
.zip 17,94Mb 5 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. boss_kuz 90 18.08.20 10:45 Сейчас в теме
Добрый день. Не подскажите в чем может быть проблема.
Делаю так :
HTTPЗапрос.УстановитьТелоИзСтроки("Привет");
		HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);

На входе получаю :

СтруктураКонтент = BroadcastКлиент.СоздатьСтруктуруИзAndroid(Данные, Ложь);


В реальности в поле Данные содержится "ривет". т.е. сервис обрезает первый символ.
Причем с json такая же проблема первый символ "{" убирается и его невозможно на приемнике прочитать
4. SanyMaga 53 18.08.20 11:11 Сейчас в теме
(1)
Это кодировка UTF-8 у вас нет Символов BOM

Для указания, что файл или поток содержит символы Юникода, в начале файла или потока может быть вставлен маркер последовательности байтов (англ. Byte order mark, BOM), который в случае кодирования в UTF-8 принимает форму трёх байтов: EF BB BF16.

Они по умолчанию.

Либо поправить код в модуле сервера в Андроид студия.

Я не проверяю просто убераю 2 первых символа.


УстановитьТелоИзСтроки(<ТелоКакСтрока>, <Кодировка>, <ИспользоватьBOM>)
3. SanyMaga 53 18.08.20 11:08 Сейчас в теме
Я не проверяю просто убераю 2 первых символа.


УстановитьТелоИзСтроки(<ТелоКакСтрока>, <Кодировка>, <ИспользоватьBOM>)
5. boss_kuz 90 19.08.20 08:13 Сейчас в теме
Добрый день. ТСД Атол Pro. В мобильном клиенте все работает хорошо, но в мобильном приложении при устанвки внешней компоненты:
Если ПодключитьВнешнююКомпоненту("ОбщийМакет.Макет", "rumalhttpserver", ТипВнешнейКомпоненты.Native) Тогда

Ошибка формата потока.
В чем может быть проблема ?
Параллельно пользуюсь вашей компонентой Rumalutilities. Она работает без проблем.
6. SanyMaga 53 19.08.20 09:46 Сейчас в теме
(5) Иногда после обновления макета вылазит такая ошибка, при первом запуске потом ее нет связанна с кешем.
Если эта ошибка постоянная тогда просьба скрин с деталями ошибки.
7. boss_kuz 90 19.08.20 17:55 Сейчас в теме
Стоит версия 8.3.15.105. Установил файл 1cem-client-arm.apk (мобильный клиент) из поставки 1С подключаюсь к опубликованной базе все работает. Ставим 1cem-arm.apk (мобильное приложение). В конфигураторе - мобильное приложение - обновить мобильное приложение. Запускаем ... происходит обновление приложения на ТСД... При начале работы системы исполняется данный код :
	#Если МобильноеПриложениеКлиент ИЛИ МобильныйКлиент Тогда	
		НачатьУстановкуВнешнейКомпоненты(, "ОбщийМакет.MalHttpServer");	
		ОписаниеОповещения = Новый ОписаниеОповещения(
			"ПослеПодключенияКомпоненты",
			ЭтотОбъект
		);	
		НачатьПодключениеВнешнейКомпоненты(
			ОписаниеОповещения,
			"ОбщийМакет.MalHttpServer",
			"rumalhttpserver",
			ТипВнешнейКомпоненты.Native
		);
	#КонецЕсли
Показать


После этого кода (пробовал также просто ПодключитьВнешнююКомпоненту) падает в ошибку.



Как подробнее даже не знаю что предложить :(
Очищал кэш приложения. Не помогло.
8. SanyMaga 53 19.08.20 20:54 Сейчас в теме
(7)
Я отлаживал как рас в мобильном приложении а не в мобильном клиенте нет.

А вот это сделано?

Во время настройки Web-публикации следует провести следующее действие. В настройках http-сервера необходимо добавить типы MIME для следующих расширений:

.so
.apk
Тип MIME: application/octet-stream
9. boss_kuz 90 20.08.20 05:54 Сейчас в теме
(8) Добрый день. У меня стоит Апач 2.4. Добавил в раздел
<IfModule mime_module>
	#Для отладки Мобильного приложения
	AddType application/octet-stream .so
	AddType application/octet-stream .apk


Не помогло. Помогите . Пожалуйста.
11. boss_kuz 90 20.08.20 08:15 Сейчас в теме
(10) Использовал готовый librumalhttpserver.zip (2291691 байт)
12. SanyMaga 53 20.08.20 09:53 Сейчас в теме
(11)

Вы писали
"Параллельно пользуюсь вашей компонентой Rumalutilities. Она работает без проблем."


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

Не могу пока локализовать вашу проблему.

P.S. Апач разный для конфигураций??
13. boss_kuz 90 20.08.20 15:21 Сейчас в теме
В одной и той же конфигурации используется Rumalutilities и rumalhttpserver. Пробовал тестирование и исправление. Удаление. Установка заново, отключал Rumalutilities все бесполезно. У меня ощущение что все таки что то с правами Андроида. Я полагаю что компонента должна запустить какую-то службу и тут происходит облом. У вас же MalAccservice вынесен отдельно. Вы можете дать какую-нибудь конфигурацию для проверки, где у вас гарантированно работает (я так понял у вас тоже Атолы). Ваше HTTP сервер, ну очень "крутая" штучка. Очень хотелось бы ее воспользоваться.
14. SanyMaga 53 21.08.20 07:54 Сейчас в теме
(13)
cf в aрхиве есть на нем и все отлаживал и скринил.
15. SanyMaga 53 21.08.20 08:20 Сейчас в теме
(13)
У меня 7 андроид был у вас скорей всего 9

Попробуйте в мнифесте (ANDROID_MANIFEST_EXTENSIONS.XML) 1с добавить:
<uses-permission android:name="android.permission.INTERNET" />

подробности: https://its.1c.ru/db/metod8dev/content/3221/hdoc

PS На сколько я знаю на сокеты разрешения не нужны.
16. SanyMaga 53 21.08.20 08:30 Сейчас в теме
(13) Попробуйте другой порт например 2550 (у меня 80 порт не открывался)

Компонента.CreateHttpServer(2550, Имя, Пароль)
17. SanyMaga 53 21.08.20 08:45 Сейчас в теме
(13) Я использовал IIS апач не знаю.
18. boss_kuz 90 22.08.20 04:33 Сейчас в теме
Простите меня , я тупой. Вид макета был "двоичные данные". А нужно "внешняя компонента". Спасибо тебе добрый человек. Вопрос снят.
19. boss_kuz 90 24.08.20 08:32 Сейчас в теме
Добрый день. Обнаружил очередную проблему. Если на Атолев мобильном приложении удалить базу и загрузить заново , то возникает ошибка и 1с закрывается. Второй раз может зайти. На "китайских" терминалах "гарантировано" не заходит. Если отменить установку компоненты все работает. Листинг ошибки :
java.lang.UnsatisfiedLinkError: dalvik.system.DexClassLoader[DexPathList[[zip file "/data/user/0/com.e1c.mobile/files/1C/1cem/34374e2c-3695-c8c3-1227-af6912cfa793/ExtCompT/ru_mal_utilities.apk"],nativeLibraryDirectories=[/data/user/0/com.e1c.mobile/files/1C/1cem/34374e2c-3695-c8c3-1227-af6912cfa793/ExtCompT, /system/lib]]] couldn't find "libru_mal_utilities.so"
	at java.lang.Runtime.loadLibrary0(Runtime.java:1012)
	at java.lang.System.loadLibrary(System.java:1669)
	at ru.mal.malutilities.AddIn1c.run(AddIn1c.java:34)
	at android.os.Handler.handleCallback(Handler.java:873)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loop(Looper.java:193)
	at android.app.ActivityThread.main(ActivityThread.java:6702)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:911)
Показать
20. SanyMaga 53 17.09.20 17:14 Сейчас в теме
(19)
"/data/user/0/com.e1c.mobile/files/1C/1cem/34374e2c-3695-c8c3-1227-af6912cfa793/ExtCompT/ru_mal_utilities.apk"],nativeLibraryDirectories=[/data/user/0/com.e1c.mobile/files/1C/1cem/34374e2c-3695-c8c3-1227-af6912cfa793/ExtCompT, /system/lib]]] couldn't find "libru_mal_utilities.so


В ошибке указаны >> ru_mal_utilities.apk и libru_mal_utilities.so << а у меня другие апк и со.
скорей всего ошибка кеша.
У вас две моих библиотеки?
Оставьте свое сообщение

См. также

Внешняя компонента для работы по Web-socket протоколу Промо

Разработка внешних компонент WEB v8 Абонемент ($m)

Кто когда-нибудь сталкивался с обменом данными по Web-Socket (wss) протоколу из 1С, тому известно, что в платформе отсутствуют данные механизмы (не путать с HTTP запросами и WebServices). Предлагается использовать внешнюю компоненту, написанную по технологии NativeAPI, для подключения и обмена с серверами из 1С-Предприятия, работающими по протоколу Web-Socket.

5 стартмани

30.03.2018    25457    35    Ditron    83    

Диагностика контекста выполнения (внешняя компонента)

Разработка внешних компонент v8 1cv8.cf Абонемент ($m)

Небольшая экспериментальная внешняя компонента для получения дополнительной информации о контексте выполнения.

1 стартмани

24.07.2020    3657    2    YPermitin    14    

Универсальная обертка для использования NATIVE компонент на платформе 1С 7.7, 8.0 и 8.1

Разработка внешних компонент v8 Абонемент ($m)

Используете 1С 7.7, 8.0 или 8.1 и вас раздражает, что под вашу 1С уже не выпускаются современные компоненты. А хотелось бы?

1 стартмани

07.07.2020    2047    1    karpik666    0    

Android Java и NativAPI C++ внешняя компонента для широковещательных сообщений (отправка и прием). Подключаем сканер ШК и клавиатуру к "1С мобильное приложение"

Оптовая торговля Розничная торговля Сканер штрих-кода Разработка внешних компонент Мобильная разработка v8::Mobile Оптовая торговля, дистрибуция, логистика Абонемент ($m)

Подключаем сканер ШК и клавиатуру к "1С мобильное приложение", на терминале сбора данных "ATOL Smart.Lite android 7.0". Работаем с буфером обмена. В архиве к теме; 1. исходник компоненты (папка package готовый zip); 2. исходник "AccessibilityService" для перехвата клавиатуры (папка package готовый apk); 3. cf - тестовая конфигурация

1 стартмани

15.04.2020    3145    30    SanyMaga    53    

Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019) Промо

Инструментарий разработчика Сканер штрих-кода Терминал сбора данных Мобильная разработка Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ v8 v8::Mobile БУ УУ Абонемент ($m)

Simple WMS Client – это визуальный конструктор мобильного клиента для терминала сбора данных(ТСД) или обычного телефона на Android. Приложение работает в онлайн режиме через интернет или WI-FI, постоянно общаясь с базой посредством http-запросов (вариант для 1С-клиента общается с 1С напрямую как обычный клиент). Можно создавать любые конфигурации мобильного клиента с помощью конструктора и обработчиков на языке 1С (НЕ мобильная платформа). Вся логика приложения и интеграции содержится в обработчиках на стороне 1С. Это очень простой способ создать и развернуть клиентскую часть для WMS системы или для любой другой конфигурации 1С (УТ, УПП, ERP, самописной) с минимумом программирования. Например, можно добавить в учетную систему адресное хранение, учет оборудования и любые другие задачи. Приложение умеет работать не только со штрих-кодами, но и с распознаванием голоса от Google. Это бесплатная и открытая система, не требующая обучения, с возможностью быстро получить результат.

5 стартмани

09.01.2019    43456    247    informa1555    232    

Мобильная платформа. Реакция на внешнее событие в Android при помощи внешней компоненты

Мобильная разработка Разработка внешних компонент v8::Mobile Молдова Абонемент ($m)

Внешняя компонента для мобильной платформы на Android. Пришиваем платформе уши, чтобы лучше слышать.

3 стартмани

06.04.2020    3486    7    kinan    17    

Получение фото с веб-камеры

Разработка внешних компонент v8 Абонемент ($m)

Получение фото с веб-камеры без ActiveX. Внешняя компонента по технологии Native API.

1 стартмани

25.03.2020    3996    38    berezdetsky    28    

Быстрая печать этикеток (ZPL, EPL, TSPL, EZPL, GEPL, TSPL-EZ)

Разработка внешних компонент v8 v8::УФ 1cv8.cf Абонемент ($m)

Качественная и быстрая печать на внутреннем языке принтеров этикеток.

4 стартмани

02.02.2020    5772    30    Johny_v    6    

TextRadar - нечеткий поиск в тексте Промо

Разработка внешних компонент Поиск данных v8 1cv8.cf Абонемент ($m)

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

1 стартмани

19.09.2018    16721    20    TSSV    18    

Наш путь к эффективной инвентаризации склада

Учет ТМЦ Учет ТМЦ Розничная торговля Мобильная разработка v8 УУ Абонемент ($m)

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

8 стартмани

12.01.2020    3745    1    Johny_v    21    

Сканирование по TWAIN в 1С (обычные и управляемые формы)

Разработка внешних компонент v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка показывает пример, как можно в 1С проводить сканирование с помощью компоненты TWAIN.

3 стартмани

03.01.2020    4685    20    Denr83    0    

Обмен данными с Android через USB

Практика программирования Мобильная разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка с примером обмена данными конфигурации 1С через USB. Без установки Web сервера и настройки WiFi.

1 стартмани

23.12.2019    3650    4    asdfgcom    2    

Беспроводные метки NFC Промо

Мобильная разработка v8::Mobile Абонемент ($m)

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

1 стартмани

16.05.2017    21318    55    PloAl    18    

Simple UI: простой конструктор мобильных приложений для устройств на Android. Самый быстрый способ создания рабочего места на смартфоне или ТСД. Обновление от 15.07.2020: чат и задачи с объектами

Мобильная разработка v8 УУ Абонемент ($m)

Simple UI – это полностью бесплатная платформа для создания мобильных рабочих мест на Android. Конструктор позволяет создавать мобильные клиенты для учетных систем и самостоятельные приложения на телефонах, ТСД (терминалах сбора данных), планшетах, электронных киосках и других устройствах. При этом не нужно разбираться в мобильной разработке, Android SDK ведь основная цель платформы – максимально упростить процесс разработки и поддержки, сделать его визуальным, собирать приложения из готовых блоков с минимумом кода. Причем код обработчиков можно писать на языке учетной системы либо задавать логику обработки событий с помощью команд REST, SQL и визуального конструктора. Проект постоянно развивается изыскивая новые способы упрощения разработки и повышения функционала и является пожалуй самым быстрым способом как создать MVP-проект так и продакшн-систему под конкретное внедрение или тиражный продукт.Тестировалось на 1С: Предприятие 8.3 релиз 8.3.13.1865.

1 стартмани

14.11.2019    13635    131    informa1555    81    

Получение AndroidID в мобильном приложении

Мобильная разработка v8::Mobile Россия Абонемент ($m)

Получаем Android DeviceID в мобильном приложении/клиенте, используя стороннее приложение.

1 стартмани

05.11.2019    7181    4    sam441    11    

Мобильное приложение для Android для отправки СМС из 1C

SMS рассылки Мобильная разработка v8 1cv8.cf Абонемент ($m)

Вашему вниманию предлагается мобильное приложение (конфигурация .cf) + HTTP сервис для отправки СМС из 1С8

2 стартмани

04.11.2019    6669    4    dimasikus31    2    

Использование сборок .NET в 1С 7. и 8.x. Создание внешних Компонент. Промо

Разработка внешних компонент v7.7 v8 1cv8.cf 1cv7.md Абонемент ($m)

Данная разработка создана для использования сборок .Net в 1С через преобразование объектов и классов в COM-объекты, которые можно использовать в 1С. Достигается это путем создания класса, реализующего методы интерфейса IReflect public class AutoWrap: IReflect.

1 стартмани

28.11.2013    82103    235    Serginio    71    

ODa - Android приложение для подключения к любой конфигурации 1С, используя OData протокол

Мобильная разработка v8 1cv8.cf Абонемент ($m)

В платформе 1С реализована прекрасная возможность работы с открытым веб-протоколом OData, который предоставляет любой другой платформе интерфейс доступа - возможность запрашивать и обновлять данные из базы 1С. Далее в статье будут описаны особенности работы мобильного приложения ODa, которое без программировании на стороне Android'a позволит разработчикам публиковать базы 1С, что даст возможность обычным пользователям взаимодействовать с объектами метаданных, используя нативные элементы интерфейса платформы Android.

1 стартмани

22.10.2019    9238    8    Kosigo    11    

Native внешняя компонента для оповещения по UDP или TCP

Разработка внешних компонент v8 Абонемент ($m)

Native внешняя компонента для оповещения по UDP или TCP, которая реализует возможность в 1С передавать сообщения с сервера на клиента. Исходный код компоненты также представлен.

1 стартмани

06.10.2019    8790    15    vdv2701    28    

Внешняя компонента Sundries: несколько полезных системных функций

Разработка внешних компонент v8 Абонемент ($m)

Звук, пауза, буфер обмена, раскладки клавиатуры и т.д.

4 стартмани

30.08.2019    5287    5    sivin-alexey    10    

Приложение Android для идентификации/распознавания образов (с обучением с одного раза, One-Shot Learning) с возможностью работы с 1С через веб-сервис Промо

Мобильная разработка v8 Абонемент ($m)

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

1 стартмани

19.06.2018    14703    4    informa1555    15    

ERP 2.4 "Рабочее место работника склада" на ТСД + Android 7

Терминал сбора данных Рабочее место Мобильная разработка Учет ТМЦ Учет ТМЦ v8 ERP2 УУ Абонемент ($m)

Решение задачи использования терминала сбора данных в режиме онлайн при помощи типовой обработки ERP 2.4 "Рабочее место работника склада", запуском ERP на мобильном клиенте 1С. Для настройки использовался ТСД Urovo V5100 на ОС Андроид 7.

1 стартмани

07.08.2019    11017    15    chemezov    8    

Мобильное приложение 1С для помарочной инвентаризации маркируемой (алкогольной) продукции

Терминал сбора данных Мобильная разработка Розничная торговля Розничная торговля v8::Mobile Розничная и сетевая торговля (FMCG) УУ Абонемент ($m)

Мобильное приложение 1С для помарочной инвентаризации маркируемой (алкогольной) продукции на ТСД под Android. Получение данных марок (штрихкодов), используя БПО для мобильного приложения. Разработка на платформе 8.3.13.1809. Мобильная платформа 8.3.13.64. Версия сборщика 2.0.8.19.

1 стартмани

18.07.2019    7201    21    savostin.alex    5    

[Расширение] для подключения мобильного устройства к УТ11.4/ КА 2/ERP 2 для работы с ордерным складом на базе Simple WMS. Для автоматизации склада нужен только телефон

Сканер штрих-кода Терминал сбора данных Мобильная разработка Управление торговлей Оптовая торговля Розничная торговля Учет ТМЦ Оптовая торговля Розничная торговля Учет ТМЦ v8 ERP2 УТ11 КА2 УУ Абонемент ($m)

Представляю готовое решение для работы с ордерами и проведения инвентаризаций в виде расширения на базе конструктора Simple WMS. Не требует доработки конфигурации, подключается как обычное расширение. Работать может с обычного телефона на Андроид либо с ТСД либо через RDP. Расширение содержит справочники, поэтому режим совместимости конфигурации должен быть не меньше 8.3.11. Расширение написано для конфигурации Управление торговлей 11.4.7 и тестировалось на Комплексная автоматизация 2.4.7.151.

5 стартмани

27.05.2019    12052    33    informa1555    27    

Tool1CD Beta в деле Промо

Разработка внешних компонент v8 Абонемент ($m)

Пс, парень! Не хочешь немного сырых байтов?

1 стартмани

09.05.2018    25029    28    baton_pk    26    

Обработка вывода на печать QR-кода и штрихкодов в различных форматах (одномерные и двумерные)

Разработка внешних компонент Ценники v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Обработка предназначена для вывода на печать QR-кода и штрихкодов в различных форматах без установки дополнительных ActiveX компонент. Тестировалась на чистой базе платформы 1С:Предприятие 8.3 (8.3.14.1630), а так же в конфигурациях Бухгалтерия предприятия КОРП, редакция (3.0.69.35) и на Бухгалтерия предприятия (3.0.70.30)

2 стартмани

22.05.2019    9355    38    MGemini    2    

Шаблон http-сервиса для вашего проекта

Внешние источники данных WEB Мобильная разработка v8 v8::Mobile 1cv8.cf Абонемент ($m)

Http-сервис для обмена данными в формате JSON. Обработчики этого сервиса находятся во внешней обработке, что позволяет дорабатывать его без изменения конфигурации. Также прилагаю пример мобильного приложения для работы с данным сервисом (получает номенклатуру и остатки на складе). Сервис очень быстро разворачивается и масштабируется под ваши задачи.

3 стартмани

04.05.2019    18701    72    MarkoSokolov    47    

Обработка нажатия аппаратных кнопок на ТСД в мобильной платформе

Разработка внешних компонент Терминал сбора данных Розничная торговля Розничная торговля v8::Mobile Абонемент ($m)

Обработка и передача события нажатия аппаратных клавиш на Android в мобильную платформу 1С.

1 стартмани

11.04.2019    9766    41    dewersia    33    

Мобильное приложение "Отчет по проделанной работе" Промо

Мобильная разработка Учет рабочего времени Учет рабочего времени v8 Россия УУ Абонемент ($m)

Приложение выполняет фиксацию рабочего времени у клиентов, а также заявок на работы, пригодится как шаблон для разработки своего или как готовое решение для работников в сфере услуг, которые фиксируют время у клиентов. В приложении 2 документа: первый "отчет за день", второй "заявка" и полезный инструмент "Отчет задачи", который в свою очередь создан для просмотра, анализа и закрытия заявок. Тестировал на Iphone 6s.

10 стартмани

01.12.2017    21604    10    olejnikov_m    6    

DLL для обмена между 1С (и не только) через UDP порты (32/64 клиенты)

Разработка внешних компонент v8 1cv8.cf Россия Абонемент ($m)

Библиотеки для создания функционала для прослушивания портов из 1С и отправки сообщений на удаленный udp порт.

1 стартмани

28.02.2019    6542    8    xxxAndricxxx    2    

Эмулятор ККМ по стандарту ФФД 1.1

Разработка внешних компонент Кассовые операции ККМ Кассовые операции v8 Розница УТ11 Россия Абонемент ($m)

Эмулятор драйвера ККМ по стандарту ФФД 1.1 предназначен для использования всех возможностей программы, при отсутствии физической кассы. Подойдет как программистам при разработке интерфейса РМК, например, так и пользователям для тестирования возможностей программы.

1 стартмани

30.12.2018    20108    132    Matveymc    24    

HTML-редактор для 1С (мобильное приложение)

Мобильная разработка v8 Абонемент ($m)

Простой, но полноценный HTML-редактор для мобильного приложения с поддержкой CSS и JavaScript Релиз платформы: 8.3.12 Релиз мобильной платформы: 8.3.13

1 стартмани

07.12.2018    6222    16    djvu    1    

NativeDraw: Компонента рисования для 1С [V2.6.2] Промо

Разработка внешних компонент Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

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

1 стартмани

13.07.2015    46330    428    ПерваяСистема    147    

WebSocket Клиент / Сервер. Внешний компонент

Разработка внешних компонент v8 1cv8.cf Абонемент ($m)

Реализация протокола WebSocket. Клиентская часть для взаимодействия с внешними сервисами. Серверная часть для организации собственного сервера, принимающего клиентские соединения в многопоточном режиме. Возможно взаимодействие RabbitMQ Slack Asterisk и другие

1 стартмани

16.11.2018    14576    71    nomadon    53    

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

Разработка внешних компонент v8 Абонемент ($m)

Внешняя Native API компонента для выполнения регулярных выражений на платформе 1С:Предприятие 8. Написана на C++. Используется движок boost::regex (v 1.69, v 1.68 - для Android). Версия синтаксиса Perl Compatible Regular Expressions.

1 стартмани

12.11.2018    11977    28    KAV2    62    

Bluetooth сканер штрихкодов и мобильное приложение 1С (Android)

Сервисные утилиты Сканер штрих-кода Мобильная разработка v8 1cv8.cf Абонемент ($m)

Сервис для работы со сканером штрихкодов и передачи данных в мобильное приложение 1С.

1 стартмани

06.11.2018    16551    55    Isonic    21    

Компоненты распознавания и печати штрих-кодов Промо

Разработка внешних компонент Сканер штрих-кода v7.7 v8 1cv8.cf 1cv7.md Абонемент ($m)

Комплект программного обеспечения для реализации функций оптического распознавания штрих-кодов различных систем при помощи обычной web-камеры, а также их отображения в печатных формах. Программы могут работать в составе конфигураций, созданных на базе платформ «1С-Предприятие» версий 7.7, 8.2, 8.3. Компонент чтения кодов реализован в виде внешней компоненты 1С с COM-интерфейсом. Компонент отображения создан по стандартной технологии ActiveX для Windows, и может быть встроен в любое приложение, поддерживающее встраивание ActiveX элементов управления, например в документ Word или Excel, или форму VBA. P.S. Добавлена новая версия программы распознавания. Новые функции: обработка видео в реальном режиме (а не по таймеру, как раньше), добавлена возможность распознавания штрих-кодов из графических файлов JPEG, PNG, GIF, BMP, а также передавать для распознавания картинки из 1С, теперь можно получить в 1С захваченное с камеры или файла изображение, как с выделением мест, содержащих коды, так и без, а также отдельные фрагменты изображений, содержащие код. Добавлены новые свойства и методы для программирования. Обновлена документация.

10 стартмани

10.07.2015    68245    83    igorberezhnov    95    

001. Криптография и цифровая подпись RSA-sha256 на платформе 1С

Разработка внешних компонент v8 1cv8.cf Абонемент ($m)

Внешняя компонента, исходники, обработка для 1С.

5 стартмани

04.09.2018    13470    26    Nikola23    60    

Класс-обработка “Работа с картами Яндекс”

Разработка внешних компонент WEB v8 Абонемент ($m)

Как показать точку или маршрут на карте Яндекс. Как получить координаты по строке адреса (геокодирование).

1 стартмани

01.08.2018    23845    197    RSConsulting    16    

Распознавание лиц (off-line). Демонстрационная база.

Разработка внешних компонент v8 Абонемент ($m)

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

1 стартмани

17.07.2018    15722    72    nomadon    45    

Полезные приемы при работе с Excel из 1С (Версия 3.1) Промо

Практика программирования Разработка внешних компонент Загрузка и выгрузка в Excel v8 1cv8.cf Абонемент ($m)

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

1 стартмани

22.09.2015    193330    440    Zerocl    66    

QR-code полная версия (без шрифта и внешней компоненты для 8.2, 8.3 и любого типа клиента)

Разработка внешних компонент Сканер штрих-кода v8 1cv8.cf Абонемент ($m)

Предназначена для создания QR-code с указанием процента восстановления потерянных данных. Строка кодирования может содержать все печатаемые символы, в том числе и кириллические. Для работы не требуется внешняя компонента или шрифт.

2 стартмани

10.07.2018    11327    15    bobank    6    

Внешняя компонента для ping'а

Разработка внешних компонент v8 1cv8.cf Абонемент ($m)

Внешняя компонента для выполнения ping'а из 1С:Предприятия 8.

1 стартмани

04.07.2018    10429    5    frkbvfnjh    24    

JVM Native API плагин - для запуска в 1С плагинов написанных на Java

Разработка внешних компонент v8 Абонемент ($m)

Запускаем виртуальную машину Java в 1С. Собрана внешняя компонента которая позволяет запускать виртуальную машину java в среде 1С. Позволяет как передавать параметры в java - так и получать уведомление через externalevent. Предпосылкой создания являлся тот факт, что есть много готового функционала которого не хватает в 1С. Язык сpp - довольно сложен для быстрой разработки, и теперь возможно использовать готовые сборки java классов (так называемые jar-файлы) для использования в 1С.

1 стартмани

20.06.2018    11531    32    minimajack    72    

Telemonitor - объединяем Telegram и 1С Промо

Сервисные утилиты Администрирование данных 1С Мобильная разработка v8 1cv8.cf Абонемент ($m)

Не так давно Telegram предоставил API для создания ботов. Telemonitor - программа, позволяющая легко настроить собственного бота для работы с 1С.

1 стартмани

09.08.2015    76826    208    salexdv    178    

Электронные карты лояльности для магазина (мобильное приложение)

Мобильная разработка Управление торговлей WEB Управление взаимоотношениями с клиентами (СRM) Розничная торговля Управление взаимоотношениями с клиентами (СRM) Розничная торговля v8 v8::ОУ v8::Mobile УТ11 Розничная и сетевая торговля (FMCG) УУ Абонемент ($m)

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

1 стартмани

28.05.2018    13331    32    Kutuzov    10    

Внешняя компонента Native для создания штрих кода (GS1 DataBar Expanded, GS1 DataBar Expanded Stacked и другие)

Разработка внешних компонент v8 1cv8.cf Абонемент ($m)

В связи с внедрением ГИС Меркурий потребовалось внешняя компонента, которая создает штрихкод и отдает 1С. ВК создана на основе библиотеки zint www.sourceforge.net/projects/zint.

1 стартмани

27.04.2018    17529    210    artmaks1988    93    

[mobile] Взаимодействие с NFC через мобильную платформу 1С

Мобильная разработка v8::Mobile 1cv8.cf Абонемент ($m)

Цель была научиться взаимодействовать с внешними приложениями из приложения на мобильной платформе 1С. Для данной цели выбрал тему чтение/запись NFC меток. Было разработано: 1) приложение в android studio, которое взаимодействует с NFC 2) приложение на мобильное платформе 1с, которое взаимодействует с разработанным приложением в android studio.

1 стартмани

15.04.2018    15790    19    leobrn    18    

7 причин, почему интеграция стала приятной. Не упускайте ряд потрясающих возможностей Промо

Внешние источники данных Интеграция Мобильная разработка v8 1cv8.cf Абонемент ($m)

В статье показаны примеры получения данных без программирования на стороне «1С:Предприятие 8». Вам нужно проверить гипотезу и проанализировать данные, почему бы не интегрироваться с Excel? Используете технологии .NET и «1С:Предприятие 8», процесс связывания систем движется катастрофически медленно? Хотите native Android приложение с вашими данными всегда под рукой?

1 стартмани

01.10.2015    56164    45    pbazeliuk    23