Мобильный клиент + HTTP Сервис + Расширение конфигурации

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

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

OData Мобильный клиент мобильная платформа сервисы расширения конфигурации IIS http web apache сервис Публикатор Линк API PAPI Pretty API

Пример использования Мобильного клиента, http сервиса и расширения. 10.04.2018 фирма 1С выпустила релиз 8.3.12.1412, с долгожданным мобильным клиентом. Платформа содержит еще ряд долгожданных функций, например возможность работы с расширением через хранилище, но разговор пойдет именно о Мобильном клиенте.

Решил пощупать мобильный клиент и рассказать, что и как прошло, но подумал, что чисто про мобильный клиент будет неинтересно рассказывать, поэтому придумал небольшую задачку для демонстрации вышеописанной связки.

Задача: На основе разработки //infostart.ru/public/811834/ создать маленькую конфигурацию с таким же функционалом, которая будет подключаться  к другим конфигурациям посредством http сервиса, который будет встраиваться посредством расширения конфигураций. В http сервисах будет описано два метода. Первый должен собирать метаданные и передавать в управляющую конфигурацию, второй должен передавать массив выбранных элементов и делать их доступными по стандартному интерфейсу OData.

Для решения использовано следующее программное обеспечение:

Платформы 8.3.10.2650 и 8.3.12.1412, Мобильная платформа 8.3.12.46, телефон на android 7.0, IIS 6 и 7, (Android Studio 3.1.1 это было необязательно, но хотелось попробовать вариант с установкой мобильной платформы на телефон через USB из конфигуратора)

1 Создаем расширение в любой конфигурации от 8.3.10, так как необходима возможность создания http сервиса и модуля. (Хотя такой функционал был и в 8.3.9, но так как конфигурации были под 8.3.8, а потом сразу 8.3.10 я считаю 8.3.9 "мертвым релизом", таким же как и 8.3.11...)

-Создаем http сервис MC_HTTPMob с UrlШаблоном ->    /V1/{ВхДанные}

-Создаем http сервис с методом get (PingMe) код обработчика:

Функция MobClientHTTPPingMe(Запрос)
	перВхИмя  = Запрос.ПараметрыURL["ВхДанные"];
	Ответочка = ?(перВхИмя = "ПроверкаПодключения","Все ОК!","Все ОК! Вы написали "+перВхИмя);
	
	Ответ = Новый HTTPСервисОтвет(200);
	Ответ.УстановитьТелоИзСтроки(Ответочка,КодировкаТекста.UTF8);	
	Ответ.Заголовки.Вставить("Content-Type","text/html; charset=utf-8");
	Возврат Ответ;
КонецФункции

 -Создаем http сервис с методом post (POST_Servis) код обработчика:

Функция MobClientHTTPPOST_Servis(Запрос)
	перИмяМетода  = Запрос.ПараметрыURL["ВхДанные"];
	ЗапросОтКлиентаJSON = Запрос.ПолучитьТелоКакСтроку();	
	СтруктураОтвет = MC_МодульHTTPMob.ОбработкаВходящихДанныхHTTP_Сервиса(ЗапросОтКлиентаJSON,перИмяМетода);
	Ответ = Новый HTTPСервисОтвет(СтруктураОтвет.КодОтвета);
	Если СтруктураОтвет.Отработало Тогда 
	    Ответ.УстановитьТелоИзСтроки(СтруктураОтвет.ДанныеОтвета,КодировкаТекста.UTF8);
	Иначе
		Ответ.УстановитьТелоИзСтроки(СтруктураОтвет.ТекстОшибки,КодировкаТекста.UTF8);
	КонецЕсли;	
	Ответ.Заголовки.Вставить("Content-Type","text/html; charset=utf-8");
	Возврат Ответ;
КонецФункции

-Создаем модуль MC_МодульHTTPMob который содержит следующий код

Функция ОбработкаВходящихДанныхHTTP_Сервиса(ЗапросОтКлиентаJSON,перИмяМетода) Экспорт
	СтруктураОтвет = Новый Структура("ДанныеОтвета,Отработало,ТекстОшибки,КодОтвета","",Истина,"",200);
	Если ВРег(перИмяМетода) = ВРег("GiveAllMetadate") Тогда 		
		ОтдайМетаданныеOData(СтруктураОтвет,ЗапросОтКлиентаJSON);
	ИначеЕсли ВРег(перИмяМетода) = ВРег("GoodMetadate") Тогда	
		
		ОткройМетаданныеODate(СтруктураОтвет,ЗапросОтКлиентаJSON);
		
	Иначе	
		СтруктураОтвет.КодОтвета 	= 400;
		СтруктураОтвет.ТекстОшибки	= "Unknown method!!!";
		СтруктураОтвет.Отработало	= Ложь;
		СтруктураОтвет.ДанныеОтвета = "";	
	КонецЕсли;		
	Возврат СтруктураОтвет;	
КонецФункции
Процедура ОтдайМетаданныеOData(СтруктураОтвет,ЗапросОтКлиентаJSON)
	СписокОбъектовOdata = ПолучитьСписокОбъектовOData();	
	УстановитьПривилегированныйРежим(Истина);
	СоставСтандартногоИнтерфейсаOData = ПолучитьСоставСтандартногоИнтерфейсаOData();
	
	РезультатОтвет = Новый Массив;
	Для Каждого СтрокаСпискаОбъектов Из СписокОбъектовOdata Цикл 
		Состояние 		= Истина;	
		ПрефиксИмениURL = ?(ПустаяСтрока(СтрокаСпискаОбъектов.Представление),"",СтрокаСпискаОбъектов.Представление);
		ИмяЗначение		= СтрокаСпискаОбъектов.Значение;
		МассивДанногоТипа = Новый Массив;
		Для Каждого ОбъектМетаданных Из Метаданные[ИмяЗначение] Цикл
			НайденOData = СоставСтандартногоИнтерфейсаOData.Найти(ОбъектМетаданных) <> Неопределено;
			МассивДанногоТипа.Добавить(Новый Структура("Имя,Синоним,ПрефиксИмениURL,Состояние",
				ОбъектМетаданных.Имя,
				ОбъектМетаданных.ПолноеИмя(),
				?(ПустаяСтрока(ПрефиксИмениURL),"",ПрефиксИмениURL+"_"+ОбъектМетаданных.Имя),			
				НайденOData));
				
			Если не НайденOData и Состояние Тогда 
				Состояние	= Ложь;
			КонецЕсли;
		КонецЦикла;	
		РезультатОтвет.Добавить(Новый Структура("ИмяЗначение,ПрефиксИмениURL,Состояние,МассивДанногоТипа",
			СтрокаСпискаОбъектов.Значение,
			ПрефиксИмениURL,
			Состояние,
			МассивДанногоТипа));	
	КонецЦикла;	
	УстановитьПривилегированныйРежим(Ложь);
	
	//Все нормально
	ПараметрыJSON	= Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет, " " , Истина, ЭкранированиеСимволовJSON.Нет, Ложь, Ложь, Ложь, Ложь);
	ЗаписьJSON		= Новый ЗаписьJSON;
	ЗаписьJSON.ПроверятьСтруктуру = Истина;
	ЗаписьJSON.УстановитьСтроку(ПараметрыJSON);

	ЗаписатьJSON(ЗаписьJSON, РезультатОтвет);
	СтрокаJSON = ЗаписьJSON.Закрыть();
	
	ЗаполнитьСтруктуруОтвета(СтруктураОтвет,200,"",Истина,СтрокаJSON);
КонецПроцедуры
Процедура ОткройМетаданныеODate(СтруктураОтвет,ЗапросОтКлиентаJSON)
	ЧтениеJSON = Новый ЧтениеJSON;
	ЧтениеJSON.УстановитьСтроку(ЗапросОтКлиентаJSON);	
					
	Попытка
		ДопДанные = ПрочитатьJSON(ЧтениеJSON);
	Исключение
		ЗаполнитьСтруктуруОтвета(СтруктураОтвет,406,"Не удалось получить данные!",Ложь,"X");
		Возврат;
	КонецПопытки;
	Если ТипЗнч(ДопДанные) = Тип("Массив") Тогда 
		УстановитьПривилегированныйРежим(Истина);
		Попытка
			УстановитьСоставСтандартногоИнтерфейсаOData(ДопДанные);	
		Исключение
			ЗаполнитьСтруктуруОтвета(СтруктураОтвет,406,ОписаниеОшибки(),Ложь,"X");
			Возврат;	
		КонецПопытки;	
	Иначе	
		ЗаполнитьСтруктуруОтвета(СтруктураОтвет,406,"Передан не массив!",Ложь,"X");
		Возврат;	
	КонецЕсли;	
	ЗаполнитьСтруктуруОтвета(СтруктураОтвет,200,"",Истина,"ОК!");
КонецПроцедуры

Функция ПолучитьСписокОбъектовOData()
	СписокОбъектовOdata = Новый СписокЗначений;	
	СписокОбъектовOdata.Добавить("Справочники",			"Catalog");	
	СписокОбъектовOdata.Добавить("Документы",			"Document");
	СписокОбъектовOdata.Добавить("ЖурналыДокументов",	"DocumentJournal");
	СписокОбъектовOdata.Добавить("Константы",			"Constant");
	СписокОбъектовOdata.Добавить("ПланыОбмена",			"ExchangePlan");
	СписокОбъектовOdata.Добавить("ПланыСчетов",			"ChartOfAccounts");
	СписокОбъектовOdata.Добавить("ПланыВидовРасчета",	"ChartOfCalculationTypes");
	СписокОбъектовOdata.Добавить("ПланыВидовХарактеристик",	"ChartOfCharacteristicTypes");
	СписокОбъектовOdata.Добавить("РегистрыСведений",	"InformationRegister");
	СписокОбъектовOdata.Добавить("РегистрыНакопления",	"AccumulationRegister");
	СписокОбъектовOdata.Добавить("РегистрыРасчета",		"CalculationRegister");
	СписокОбъектовOdata.Добавить("РегистрыБухгалтерии",	"AccountingRegister");
	СписокОбъектовOdata.Добавить("БизнесПроцессы",		"BusinessProcess");
	СписокОбъектовOdata.Добавить("Задачи",				"Task");
	СписокОбъектовOdata.Добавить("Перечисления",		"");
	Возврат СписокОбъектовOdata;	
КонецФункции	
				
Процедура ЗаполнитьСтруктуруОтвета(СтруктураОтвет,КодОтвета,ТекстОшибки,Отработало,ДанныеОтвета)
	СтруктураОтвет.КодОтвета 	= КодОтвета;
	СтруктураОтвет.ТекстОшибки	= ТекстОшибки;
	СтруктураОтвет.Отработало	= Отработало;
	СтруктураОтвет.ДанныеОтвета = ДанныеОтвета;	
КонецПроцедуры

-Помещаем данное расширение в нужные нам конфигурации и публикуем на вэб сервере.

Незабываем сделать публикацию с учетом OData и расширения!!!

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

В моем случае  http://127.0.0.1/DemoRetail22723/hs/MC_HTTPMob/V1/Привет

2 Создаем Управляющую конфигурацию

-Создаем справочник для хранения настроек подключений к другим конфигурациям

Реквизит НастройкиПодключения я сделал с типом ХранилищеЗначения.

На форму добавил кнопку с подключением к get методу PingMe

-Добавляем в конфигурацию обработку (//infostart.ru/public/811834/) и переделываем ее под такой вид:

-ПриОткрытии я использовал новую директиву МобильныйКлиент (глава на ИТС 26.5.2. Подготовка конфигурации для работы в мобильном клиенте)

#Если не МобильныйКлиент Тогда
	Элементы.СписокМетаданныхГруппаФлажки.Отображение = ОтображениеГруппыКнопок.Компактное;
	Элементы.СписокМетаданныхГруппаВсернутьРазвернуть.Отображение = ОтображениеГруппыКнопок.Компактное;
	Элементы.СписокМетаданныхПрефиксИмениURL.Видимость = Истина;
	Элементы.Система.ПодсказкаВвода	= "";
	НеМобильныйШрифт = Новый Шрифт(Элементы.СписокМетаданныхЗаписатьИзменения.Шрифт,,12,истина);
	Элементы.СписокМетаданныхЗаписатьИзменения.Шрифт = НеМобильныйШрифт;
#Иначе	
	Элементы.СписокМетаданныхВыбран.Заголовок = "Выбрать";
	Элементы.СписокМетаданныхСпасибо.Видимость = Ложь;
#КонецЕсли

-Прописываем действие команды ЗагрузитьМетаданныеСистемы

&НаКлиенте
Процедура ЗагрузитьМетаданныеСистемы(Команда)
	Если Не ЗначениеЗаполнено(Система) Тогда 
		Возврат;
	КонецЕсли;	
	ЗагрузитьМетаданныеСистемыНаСервере();
КонецПроцедуры

&НаСервере
Процедура ЗагрузитьМетаданныеСистемыНаСервере()
	СтруктураПараметры = Система.НастройкиПодключения.Получить();
	
	Если ТипЗнч(СтруктураПараметры) = Тип("Структура") Тогда 
		
		Если СтруктураПараметры.Свойство("БлокНастройкиПодключенияHTTP") Тогда 
			
			СтрБлокНастройкиПодключенияHTTP = СтруктураПараметры.БлокНастройкиПодключенияHTTP; 
			
			Если СтрБлокНастройкиПодключенияHTTP.Свойство("HTTPСервер") Тогда
				Сервер = СтрБлокНастройкиПодключенияHTTP.HTTPСервер;
			КонецЕсли;
			
			Если СтрБлокНастройкиПодключенияHTTP.Свойство("HTTPПорт") Тогда
				Порт = СтрБлокНастройкиПодключенияHTTP.HTTPПорт;
			КонецЕсли;
			
			Если СтрБлокНастройкиПодключенияHTTP.Свойство("HTTPРесурсНаСервере") Тогда
				РесурсНаСервере = СтрБлокНастройкиПодключенияHTTP.HTTPРесурсНаСервере;
			КонецЕсли;
			
			Если СтрБлокНастройкиПодключенияHTTP.Свойство("HTTPПользователь") Тогда
				Пользователь = СтрБлокНастройкиПодключенияHTTP.HTTPПользователь;
			КонецЕсли;
			
			Если СтрБлокНастройкиПодключенияHTTP.Свойство("HTTPПароль") Тогда
				Пароль = СтрБлокНастройкиПодключенияHTTP.HTTPПароль;
			КонецЕсли;
		КонецЕсли;
	КонецЕсли;	
	
	Если ПустаяСтрока(Сервер) Тогда
		Сообщить("Не заполнен ""Сервер""!");
		Возврат;
	Иначе	
		перСервер = Сервер;
	КонецЕсли;	
	Если ПустаяСтрока(РесурсНаСервере) Тогда
		Сообщить("Не заполнен ""Ресурс на сервере""!");
		Возврат;
	Иначе	
		перРесурсНаСервере = РесурсНаСервере;
	КонецЕсли;
	
	перПользователь = Пользователь;
	перПароль = Пароль;
	
	Если Порт > 0 Тогда
		перПорт = Порт;
	Иначе	
		перПорт = 0;
	КонецЕсли;
	ИмяМетода = "GiveAllMetadate";
	перРесурсНаСервере = ?(Лев(перРесурсНаСервере,1)<>"/","/","") + перРесурсНаСервере + ?(Прав(перРесурсНаСервере,1)<>"/","/","") + ИмяМетода;
	
	
	Попытка		
		Если перПорт <= 0 Тогда 
			HTTPСоединение = Новый HTTPСоединение(перСервер,,перПользователь,перПароль);
		Иначе 
			HTTPСоединение = Новый HTTPСоединение(перСервер,перПорт,перПользователь,перПароль);
		КонецЕсли;
		
		HTTPЗапрос = Новый HTTPЗапрос(перРесурсНаСервере);
		HTTPЗапрос.УстановитьТелоИзСтроки("");
		
		HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
		//Получаем ответный массив или текст ошибки
		Ответочка = HTTPОтвет.ПолучитьТелоКакСтроку(КодировкаТекста.UTF8);
		
		
	Исключение
		Сообщить("Подключение не прошло по причине "+ОписаниеОшибки());
		
		//Подчищаем соединение
		HTTPСоединение = Неопределено;
		Возврат;
	КонецПопытки;
	
	//Подчищаем соединение
	HTTPСоединение = Неопределено;
	
	Если HTTPОтвет.КодСостояния <> 200 Тогда 
		Сообщить(Строка(Ответочка));
	Иначе 
		
		ЧтениеJSON = Новый ЧтениеJSON;
		ЧтениеJSON.УстановитьСтроку(Ответочка);	
		
		Попытка
			ДопДанные = ПрочитатьJSON(ЧтениеJSON);
		Исключение
			Сообщить("Неудалось получить данные!");
			Возврат;
		КонецПопытки;
		
		
	КонецЕсли;
	
	
	перСписокМетаданных = РеквизитФормыВЗначение("СписокМетаданных");
	перСписокМетаданных.Строки.Очистить();
	Если ТипЗнч(ДопДанные) = Тип("Массив") Тогда 
		Для Каждого СтрокаМассива из ДопДанные Цикл
			Если ТипЗнч(СтрокаМассива) = Тип("Структура") Тогда	
				ВерхнийУровеньДерева = перСписокМетаданных.Строки.Добавить();	
				ВерхнийУровеньДерева.Выбран			= ?(СтрокаМассива.Свойство("Состояние"),СтрокаМассива.Состояние,Ложь);	
				ВерхнийУровеньДерева.Состояние		= ВерхнийУровеньДерева.Выбран;
				ВерхнийУровеньДерева.Имя			= ?(СтрокаМассива.Свойство("ИмяЗначение"),СтрокаМассива.ИмяЗначение,"");
				ВерхнийУровеньДерева.Синоним        = ВерхнийУровеньДерева.Имя;
				ВерхнийУровеньДерева.ПрефиксИмениURL= ?(СтрокаМассива.Свойство("ПрефиксИмениURL"),СтрокаМассива.ПрефиксИмениURL,"");
				
				Если СтрокаМассива.Свойство("МассивДанногоТипа") Тогда 
					Если ТипЗнч(СтрокаМассива.МассивДанногоТипа) = Тип("Массив") Тогда
						Для Каждого ОбъектМетаданных Из СтрокаМассива.МассивДанногоТипа Цикл
							Если ТипЗнч(ОбъектМетаданных) = Тип("Структура") Тогда
								ПодчиненныйУровеньДерева = ВерхнийУровеньДерева.Строки.Добавить();
								ПодчиненныйУровеньДерева.Имя			= ?(ОбъектМетаданных.Свойство("Имя"),ОбъектМетаданных.Имя,"");
								ПодчиненныйУровеньДерева.Синоним        = ?(ОбъектМетаданных.Свойство("Синоним"),ОбъектМетаданных.Синоним,"");
								ПодчиненныйУровеньДерева.ПрефиксИмениURL= ?(ОбъектМетаданных.Свойство("ПрефиксИмениURL"),ОбъектМетаданных.ПрефиксИмениURL,"");
								ПодчиненныйУровеньДерева.Состояние		= ?(ОбъектМетаданных.Свойство("Состояние"),ОбъектМетаданных.Состояние,Ложь);
								ПодчиненныйУровеньДерева.Выбран			= ПодчиненныйУровеньДерева.Состояние;
							Иначе
								Сообщить("Элемент массива не является структурой!")
							КонецЕсли	
						КонецЦикла;	
					Иначе
						Сообщить("МассивДанногоТипа не массив!")
					КонецЕсли;
				Иначе
					Сообщить("Отсутствует ""МассивДанногоТипа""!")
				КонецЕсли
			Иначе
				Сообщить("Элемент массива не является структурой!")
			КонецЕсли				
		КонецЦикла;
	Иначе
		Сообщить("Вернулся не массив!")
	КонецЕсли;		
	ЗначениеВРеквизитФормы(перСписокМетаданных, "СписокМетаданных");	
	Модифицированность = Ложь;
КонецПроцедуры

-Описываем действие команды ЗаписатьИзменения

&НаКлиенте
Процедура ЗаписатьИзменения(Команда)
	ЗаписатьИзмененияНаСервере();
КонецПроцедуры
&НаСервере
Процедура ЗаписатьИзмененияНаСервере()
	СоставСтандартногоИнтерфейсаOData = Новый Массив;
	перСписокМетаданных = РеквизитФормыВЗначение("СписокМетаданных");
	
	//Проверим ниже модифицировано или нет
	Модифицированность = Ложь;
	Для Каждого ВерхнийУровеньДерева Из перСписокМетаданных.Строки Цикл		
		Для Каждого ПодчиненныйУровеньДерева Из ВерхнийУровеньДерева.Строки Цикл
			Если ПодчиненныйУровеньДерева.Выбран Тогда
				СоставСтандартногоИнтерфейсаOData.Добавить(ПодчиненныйУровеньДерева.Синоним);	
			КонецЕсли;
			
			//Может ничего и не меняли
			Если ПодчиненныйУровеньДерева.Выбран<>ПодчиненныйУровеньДерева.Состояние И не Модифицированность Тогда 
				Модифицированность = Истина;
			КонецЕсли;	
		КонецЦикла;
	КонецЦикла;
	
	//Если меняли записываем
	Если Модифицированность Тогда 
		
		СтруктураПараметры = Система.НастройкиПодключения.Получить();
		
		Если ТипЗнч(СтруктураПараметры) = Тип("Структура") Тогда 
			
			Если СтруктураПараметры.Свойство("БлокНастройкиПодключенияHTTP") Тогда 
				
				СтрБлокНастройкиПодключенияHTTP = СтруктураПараметры.БлокНастройкиПодключенияHTTP; 
				
				Если СтрБлокНастройкиПодключенияHTTP.Свойство("HTTPСервер") Тогда
					Сервер = СтрБлокНастройкиПодключенияHTTP.HTTPСервер;
				КонецЕсли;
				
				Если СтрБлокНастройкиПодключенияHTTP.Свойство("HTTPПорт") Тогда
					Порт = СтрБлокНастройкиПодключенияHTTP.HTTPПорт;
				КонецЕсли;
				
				Если СтрБлокНастройкиПодключенияHTTP.Свойство("HTTPРесурсНаСервере") Тогда
					РесурсНаСервере = СтрБлокНастройкиПодключенияHTTP.HTTPРесурсНаСервере;
				КонецЕсли;
				
				Если СтрБлокНастройкиПодключенияHTTP.Свойство("HTTPПользователь") Тогда
					Пользователь = СтрБлокНастройкиПодключенияHTTP.HTTPПользователь;
				КонецЕсли;
				
				Если СтрБлокНастройкиПодключенияHTTP.Свойство("HTTPПароль") Тогда
					Пароль = СтрБлокНастройкиПодключенияHTTP.HTTPПароль;
				КонецЕсли;
			КонецЕсли;
		КонецЕсли;	
		
		Если ПустаяСтрока(Сервер) Тогда
			Сообщить("Не заполнен ""Сервер""!");
			Возврат;
		Иначе	
			перСервер = Сервер;
		КонецЕсли;	
		Если ПустаяСтрока(РесурсНаСервере) Тогда
			Сообщить("Не заполнен ""Ресурс на сервере""!");
			Возврат;
		Иначе	
			перРесурсНаСервере = РесурсНаСервере;
		КонецЕсли;
		
		перПользователь = Пользователь;
		перПароль = Пароль;
		
		Если Порт > 0 Тогда
			перПорт = Порт;
		Иначе	
			перПорт = 0;
		КонецЕсли;
		ИмяМетода = "GoodMetadate";
		перРесурсНаСервере = ?(Лев(перРесурсНаСервере,1)<>"/","/","") + перРесурсНаСервере + ?(Прав(перРесурсНаСервере,1)<>"/","/","") + ИмяМетода;
		
		Попытка		
			Если перПорт <= 0 Тогда 
				HTTPСоединение = Новый HTTPСоединение(перСервер,,перПользователь,перПароль);
			Иначе 
				HTTPСоединение = Новый HTTPСоединение(перСервер,перПорт,перПользователь,перПароль);
			КонецЕсли;
			
			ПараметрыJSON	= Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет, " " , Истина, ЭкранированиеСимволовJSON.Нет, Ложь, Ложь, Ложь, Ложь);
			ЗаписьJSON		= Новый ЗаписьJSON;
			ЗаписьJSON.ПроверятьСтруктуру = Истина;
			ЗаписьJSON.УстановитьСтроку(ПараметрыJSON);
			ЗаписатьJSON(ЗаписьJSON, СоставСтандартногоИнтерфейсаOData);
			СтрокаJSON = ЗаписьJSON.Закрыть();
			
			HTTPЗапрос = Новый HTTPЗапрос(перРесурсНаСервере);
			HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаJSON);
			
			HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
			//Получаем ответный массив или текст ошибки
			Ответочка = HTTPОтвет.ПолучитьТелоКакСтроку(КодировкаТекста.UTF8);
		Исключение
			Сообщить("Подключение не прошло по причине "+ОписаниеОшибки());	
			//Подчищаем соединение
			HTTPСоединение = Неопределено;
			Возврат;
		КонецПопытки;
		//Подчищаем соединение
		HTTPСоединение = Неопределено;
		
		Если HTTPОтвет.КодСостояния <> 200 Тогда 
			Сообщить(Строка(Ответочка));
		Иначе 	
			Модифицированность = Ложь;	
		КонецЕсли;	
	КонецЕсли;	
КонецПроцедуры

3 Проверяем в тонком клиенте

4 Публикуем и устанавливаем мобильную платформу на телефон.

Есть два способа, простой и сложный.

Простой: В настройках телефона в меню безопасность включаем Неизвестные источники и скачиваем мобильную платформу и закидываем ее на телефон.

Сложный способ: Качаем и устанавливаем Android Studio 3.1.1 (https://developer.android.com/studio/index.html) и качаем мобильную платформу.

-На телефоне включаем отладку по USB (чаще всего в меню разработчика) и включаем Неизвестные источники.

 -В конфигураторе прописываем путь к SDK и мобильной платформе, ставим галочку Использование Android debug bridge.

-подключаем телефон по usb и в конфигураторе: Главное меню \ Конфигурация \Мобильный клиент\ Использование Android debug bridge \ Установить мобильный клиент.

Более подробно описано на ИТС в главе 26.6.2. Установка инструментов разработчика.

5 Тестируем Мобильный клиент

Открываем мобильную платформу и добавляем нашу конфигурацию

У меня так:

Выкладываю Расширение конфигурации, его можно встроить в любую конфигурацию с поддержкой 8.3.10 и выше и выкладываю Управляющую конфигурацию.

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

Наименование Файл Версия Размер
Мобильный клиент + HTTP Сервис + Расширение конфигурации:
.rar 23,03Kb
29.10.18
44
.rar 1.0.0 23,03Kb 44 Скачать

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

Лучшие комментарии
15. dsdred 1412 06.05.18 12:05 Сейчас в теме
(14)
А где мобильный клиент? Пришлите можалуйста дистрибутив. Спасибо.

Добрый день. В том то и дело, что мобильный клиент это то что появилось в 8.3.12. Теперь можно просто опубликовать конфигурацию без разработок отдельного мобильного приложения.
Мобильный клиент работает по протоколу http. (https://wonderland.v8.1c.ru/blog/mobilnyy-klient/)

В архиве лежит МобильныйКлиентТест.cf
1 Необходимо развернуть данную конфигурацию на платформе 8.3.12(я использовал эту версию https://releases.1c.ru/version_files?nick=Platform83&ver=8.3.12.1412) и опубликовать на веб сервере (я использовал IIS 6) .
(Ниже приложил картинку.)

2 На телефон установить Мобильную платформу(я использовал вот эту https://releases.1c.ru/version_files?nick=mobile&ver=8.3.12.46), прописать путь к опубликованной базе и использовать. (пункт 5 в статье)

В статье в самом низу я указал что в архиве (Выкладываю Расширение конфигурации, его можно встроить в любую конфигурацию с поддержкой 8.3.10 и выше и выкладываю Управляющую конфигурацию.)
Прикрепленные файлы:
Остальные комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. Sapiens_bru 3 16.04.18 12:26 Сейчас в теме
Публикация интересная, но в ней как-то мало новой информации. Всё это уже было тут рассказано много раз. В вашем варианте вообще нет разницы - использовать мобильный клиент, или мобильную платформу.
Вот если бы расширение к типовой программе давало ей мобильный интерфейс сразу, без промежуточных баз и сервисов обмена - было бы круто. Жаль что так нельзя, по крайней мере пока.
2. dsdred 1412 16.04.18 12:49 Сейчас в теме
(1)
Вот если бы расширение к типовой программе давало ей мобильный интерфейс сразу, без промежуточных баз и сервисов обмена - было бы круто. Жаль что так нельзя, по крайней мере пока.

Это почему нельзя? Очень даже можно.
1 В расширение добавляем нужную обработку, HTTP сервис, роль. На эту роль вешаем на рабочий стол форму обработки.
2 Создаем пользователя и даем ему эту роль.
3 Публикуем и радуемся.
Этот вариант неудобен тем, что в списке баз на мобилке будет столько сколько баз с разширениями.


Вообще конечно можно больше было рассказать... Посмотрим может попозже что то попроще именно про мобильный клиент набросаю.
Пока планирую другую статью))
18. Region102 31.05.18 05:26 Сейчас в теме
(1) вполне можно, человеку конечно плюс за старания, но мне кажется, что чем проще тем лучше.
22. dsdred 1412 31.05.18 08:06 Сейчас в теме
(18)Наверное лучше, но вот такой я человек. Мне если просто, то скучно...
3. saa@kuzov.org 16.04.18 14:10 Сейчас в теме
Коллеги, простите за оффтопик. Тут свежая тема, и релевантные люди.

Подскажите толковую статью про сборку моб приложений на платформе 1с под яблоко (особенно что как делать на сайте эппл про сертификаты-профили для сборки, пуши, публикациб). и под андроид (тут все умею, но моб клиент 8.3.13 не собирается никак, какие настройки и версия sdk?)
4. dsdred 1412 16.04.18 14:27 Сейчас в теме
(3)
Подскажите толковую статью про сборку моб приложений на платформе 1с под яблоко (особенно что как делать на сайте эппл про сертификаты-профили для сборки, пуши, публикациб). и под андроид (тут все умею, но моб клиент 8.3.13 не собирается никак, какие настройки и версия sdk?)


Статью полезную не находил по эплам, только курсы (https://xn----1-bedvffifm4g.xn--p1ai/1c-v8/mobile-1c-monetization/)
7. saa@kuzov.org 16.04.18 20:35 Сейчас в теме
(4) как говорится, за деньги и дурак купит...
Есть продукт, есть документация разработчиков.
Есть подозрение, что я просто не знаю где она есть (может в файлах, или в справке или на ИТС или на партнерском форуме).
А курс... ну тот что Вы показали, он устарел (XCode сейчас 9.3) и там много того что не нужно. Это как купить велосипед, чтобы у меня был насос для накачивания волйбольного мяча
8. dsdred 1412 16.04.18 20:46 Сейчас в теме
(7) На ИТС только Глава 26. Разработка для мобильных устройств по этой теме.
Хотя я могу ошибаться...

К сожалению с документацией у 1с обычно не очень хорошо...
19. Region102 31.05.18 05:28 Сейчас в теме
(3) сборку на IOS я еще не делал, но мобильный клиент отлично собирается под android, можете посмотреть на моем канале youtube.
20. Region102 31.05.18 05:35 Сейчас в теме
21. dsdred 1412 31.05.18 08:00 Сейчас в теме
(20)Спасибо за видео, единственное наверное стоило обозначить что для рабочей конфигурации не стоит менять режим совместимости и конфигурацию проверить на режим Мобильный клиент.

А в остальном очень понравилась подача материала.
Прикрепленные файлы:
23. Region102 31.05.18 11:47 Сейчас в теме
(21) Согласен, получилось бы быстрее выявить ошибки, а не методом тыка )
24. Region102 31.05.18 11:49 Сейчас в теме
(21)
не стоит менять режим совместимости
типовые до сих пор работают в режиме совместимости 8.3.10 или 8.3.11. Мобильный клиент работает только в режиме 8.3.12, если я не ошибаюсь.
25. dsdred 1412 31.05.18 12:06 Сейчас в теме
(24)
типовые до сих пор работают в режиме совместимости 8.3.10 или 8.3.11. Мобильный клиент работает только в режиме 8.3.12, если я не ошибаюсь.

Все верно типовые работают на 8.3.10, а мобильный под 8.3.12.
Суть в том, что типовые под 8.3.12 выйдут не ранее сентября этого года.

Режим совместимости для Тестирования на здоровье можно перевести на 8.3.12 в "не использовать", но боевые базы переводить не надо и об этом лучше предупредить сразу.
5. Steelvan 16.04.18 17:51 Сейчас в теме
Вместо "Все ОК" написать "Все отлично" или "Все хорошо" никак ?
Минус поставил.
Designer1C; Axel089; +2 7 Ответить
6. dsdred 1412 16.04.18 19:47 Сейчас в теме
(5)
Вместо "Все ОК" написать "Все отлично" или "Все хорошо" никак ?
Минус поставил.

Вы серьезно? Это самое необычное замечание за всю мою жизнь))

Это же как говорится на вкус и цвет. Служит данный ответ сервиса только для того чтобы узнать что все подключено и все работает, разовая операция.

Меняется в одном месте.
В расширении конфигурации MC.cfe, в модуле http сервиса, в функции MobClientHTTPPingMe поменять одну стройчку.
Было
Ответочка = ?(перВхИмя = "ПроверкаПодключения","Все ОК!","Все ОК! Вы написали "+перВхИмя);

Стало
Ответочка = ?(перВхИмя = "ПроверкаПодключения","Все хорошо!","Все хорошо! Вы написали "+перВхИмя);
или
Ответочка = ?(перВхИмя = "ПроверкаПодключения","Все замечательно!","Все замечательно! Вы написали "+перВхИмя);
или
Ответочка = ?(перВхИмя = "ПроверкаПодключения","Все великолепно!","Все великолепно! Вы написали "+перВхИмя);
или
Ответочка = ?(перВхИмя = "ПроверкаПодключения","Все отлично!","Все отлично! Вы написали "+перВхИмя);
chemezov; dimkakopylow001; softgarant; kolya_tlt; Max27; rutony; awk; pinkz80; yarsort; +9 Ответить
11. asved.ru 35 18.04.18 08:31 Сейчас в теме
(5) Надо было к "по средствам" придираться.
kaa_; dsdred; +2 Ответить
12. dsdred 1412 18.04.18 20:14 Сейчас в теме
(11)
Надо было к "по средствам" придираться.

Спасибо исправил. ;)
33. Designer1C 333 29.10.18 10:18 Сейчас в теме
(12) За статью спасибо. Прочитал с интересом. Надеюсь скоро воспользоваться Вашим опытом.
Как читатель добавлю : Хорошо, что ошибки в тексте исправляются.
Это трудное слово пишется слитно : ""посредством", вдобавок.
Я иногда применяю способ замены сложных для написания слов на более простые
В тексте могут быть использованы слова-синонимы : "методом", "с помощью". Смысл может остаться тот же.
34. dsdred 1412 29.10.18 10:35 Сейчас в теме
(33)Спасибо за урок. Учту.
Статью писал ночью на одном дыхание, слова уже с трудом подбирались.
35. chemezov 31 08.08.19 03:18 Сейчас в теме
(5)У вас наверно от кнопок "ОК" в Windows и 1С и других русифицированных программах глаза уже дергаются )_)))))
14. djolejek 06.05.18 10:33 Сейчас в теме
А где мобильный клиент? Пришлите можалуйста дистрибутив. Спасибо.
15. dsdred 1412 06.05.18 12:05 Сейчас в теме
(14)
А где мобильный клиент? Пришлите можалуйста дистрибутив. Спасибо.

Добрый день. В том то и дело, что мобильный клиент это то что появилось в 8.3.12. Теперь можно просто опубликовать конфигурацию без разработок отдельного мобильного приложения.
Мобильный клиент работает по протоколу http. (https://wonderland.v8.1c.ru/blog/mobilnyy-klient/)

В архиве лежит МобильныйКлиентТест.cf
1 Необходимо развернуть данную конфигурацию на платформе 8.3.12(я использовал эту версию https://releases.1c.ru/version_files?nick=Platform83&ver=8.3.12.1412) и опубликовать на веб сервере (я использовал IIS 6) .
(Ниже приложил картинку.)

2 На телефон установить Мобильную платформу(я использовал вот эту https://releases.1c.ru/version_files?nick=mobile&ver=8.3.12.46), прописать путь к опубликованной базе и использовать. (пункт 5 в статье)

В статье в самом низу я указал что в архиве (Выкладываю Расширение конфигурации, его можно встроить в любую конфигурацию с поддержкой 8.3.10 и выше и выкладываю Управляющую конфигурацию.)
Прикрепленные файлы:
36. Rustig 1420 03.05.20 00:37 Сейчас в теме
(15) лицензия нужна на мобильную платформу?
37. dsdred 1412 03.05.20 11:32 Сейчас в теме
(36)В зависимости от вариантов: Мобильная платформа 1С: лицензионная политика.

Средства разработки мобильных приложений и мобильная платформа "1С:Предприятие 8" для целей разработки включены в коммерческую поставку платформы "1С:Предприятие" и без дополнительной оплаты доступны разработчикам прикладных решений, правомерно владеющим дистрибутивом платформы "1С:Предприятие 8.3".

Правила лицензирования для тиражных решений.
При бесплатном распространении мобильного приложения, созданного на платформе «1С:Предприятие», среди третьих лиц через магазины приложений AppStore, Google Play и Windows Store и любыми другими способами, заключение лицензионного договора с фирмой «1С» не требуется, никаких финансовых обязательств перед «1С» у разработчика не возникает.

При любом способе монетизации требуется заключение лицензионного соглашения с фирмой «1С», согласно которому, начиная с 60 001-го заработанного в результате распространения приложения рубля (или суммы в долларах, эквивалентной 60 001 руб для случаев монетизации не в рублях), выплачивать в «1С» роялти в размере 10% от оборота приложения.

Правила лицензирования для заказных решений.
Для установки и использования мобильных приложений, созданных на платформе "1С:Предприятие", на мобильных устройствах своих сотрудников, организация должна приобрести клиентскую лицензию на соответствующее количество мобильных рабочих мест.

При установке на одно устройство нескольких приложений, созданных на мобильной платформе "1С:Предприятие 8", необходимо приобрести клиентскую лицензию (картинка превью) на мобильные рабочие места на каждое из таких приложений.

Клиентская лицензия на мобильные рабочие места представляет собой документ, регулирующий правила использования мобильной платформы "1С:Предприятие" на количестве мобильных рабочих мест, указанных в лицензии.

Подробна информация и стоимость клиентских лицензий для Российской Федерации, для других стран.

Лицензирование использования технологии мобильный клиент.
При использовании технологии мобильный клиент используется клиентская лицензия, выдаваемая сервером на время сеанса. Ничего дополнительно для мобильного клиента приобретать не нужно.
30. GlebBR 3 18.07.18 09:33 Сейчас в теме
Добрый день, а вы решали проблему аутентификации пользователя, через расширение ? Опубликован веб клиент, и есть http - сервис через расширение, и при обращению к http - сервису он дает ошибку аунтефикации. Как сделать автоматическую аунтефикацию под пользователем для http-сервиса через расширение, но веб клиент не трогать.
31. dsdred 1412 06.08.18 21:16 Сейчас в теме
(30)Добрый вечер. Проблему не решал, так как с такой проблемой не сталкивался.
Оставьте свое сообщение

См. также

Конструктор мобильного клиента 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    37067    241    informa1555    200    

Перехват сканирования Android Native API

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

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

1 стартмани

29.04.2020    1580    5    evgeny43    15    

Мобильная платформа. Уникальный идентификатор устройства Android при помощи внешней компоненты. Не IMEI

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

Идентифицируем устройства, на которых установлены копии нашего приложения.

3 стартмани

23.04.2020    1106    0    kinan    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    1229    8    SanyMaga    7    

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

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

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

1 стартмани

16.05.2017    19812    46    PloAl    18    

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

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

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

3 стартмани

06.04.2020    1919    3    kinan    13    

[Расширение] Готовые решения для инвентаризации товаров и основных средств на мобильных устройствах для КА, УТ, ERP и БП 3.0 на базе Simple UI

Оптовая торговля Розничная торговля Учет ОС и НМА Мобильная разработка Учет ТМЦ v8 ERP2 БП3.0 УТ11 КА2 БУ УУ Абонемент ($m)

В расширениях для Бухгалтерия 3.0 и КА2.4/УТ11.4/ERP2.4 представлены готовые рабочие места для онлайн и оффлайн инвентаризации товаров (для БП 3.0 также инвентаризации основных средств) на базе бесплатного конструктора мобильного фронта Simple UI. При этом используется расширенная работа с идентификацией товаров и ОС с помощью различных подходов – сканирование штрих кода, распознавание артикулов и инвентарных номеров и различные поиски. Также используются различные возможности платформы Simple UI. Используются только бесплатные возможности Simple UI (не Pro-версия), т.е. решение бесплатное. Данная разработка может быть полезна как конечным пользователям, так и разработчикам в качестве заготовки, так как на базе этих блоков можно сделать ввод любого документа конфигурации , связанного с товаром или с ОС. Тестировалось на 1С 8.3.13.1865, КА 2.4.8.63 и БП 3.0.74.69

5 стартмани

28.02.2020    2090    11    informa1555    5    

Обработка голосового ввода текста с использованием (intent)

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

Обработка для голосового ввода текста с использованием дополнительных возможностей ОС Android.

1 стартмани

26.02.2020    1644    1    algabas    7    

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

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

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

1 стартмани

19.06.2018    13047    4    informa1555    15    

Пример реализации HTML-формы календаря для мобильного приложения

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

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

5 стартмани

13.02.2020    2178    9    ingeneerz@gmail.com    0    

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

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

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

8 стартмани

12.01.2020    2478    1    Johny_v    21    

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

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

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

1 стартмани

23.12.2019    2306    3    asdfgcom    2    

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

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

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

10 стартмани

01.12.2017    18676    10    olejnikov_m    6    

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

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

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

5 стартмани

14.11.2019    9946    92    informa1555    71    

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

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

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

1 стартмани

05.11.2019    5764    3    sam441    11    

Использование библиотеки Retrofit в проектах на Андроид

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

Использование библиотеки Retrofit в проектах на Андроид для обмена данными с 1С с помощью HTTP-сервисов, с примерами и готовым рабочим шаблоном.

5 стартмани

04.11.2019    4537    3    WKBAPKA    8    

Внешние компоненты. Мобильное приложение 1С Промо

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

Пример применения технологии внешних компонент для мобильной платформы 1С (Android)

1 стартмани

17.02.2017    40276    118    flyer    35    

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

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

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

2 стартмани

04.11.2019    5498    3    dimasikus31    2    

Мобильная платформа. Косяки работы с интерфейсом

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

Думаю, каждый, кто хоть немного акцентировался на работе интерфейса на мобилке, сталкивался с проблемами с управлением элементами формы. О них и предлагаю поговорить.

1 стартмани

24.10.2019    3494    0    Crazy_Max    2    

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

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

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

1 стартмани

22.10.2019    7727    8    Kosigo    11    

Hello world на metadata.js Промо

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

Про браузерные offline-first приложения можно написать миллионы слов. Сэкономлю своё и ваше время и перейду сразу к делу. В статье не будет рекламы и агитации за новые технологии, не будет критики традиционных или попсовых решений. Рассмотрим по шагам разработку простейшей программы на metadata.js. Постараюсь сделать акцент не на том «как это сделано», а «почему сделано именно так»

1 стартмани

11.08.2016    54332    111    unpete    208    

Мой помощник и бухгалтер

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

Домашняя бухгалтерия, записная книжка, контакты, напоминания, сканер штрих-кода, матрица Эйзенхауэра - все в твоём телефоне.

1 стартмани

26.09.2019    3993    2    user-sergey    10    

Компонента аутентификации и шифрования с помощью биометрической информации для Андроид

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

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

5 стартмани

17.09.2019    4304    1    IgorKissil    7    

Хороший заказчик - плохой заказчик

О жизни Россия Бесплатно (free)

Лайфхак о том, как стать легендарным клиентом.

13.09.2019    6860    0    dsdred    24    

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

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

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

1 стартмани

09.08.2015    73572    208    salexdv    178    

Мобильный терминал - универсальное мобильное решение для автоматизации учета на складских предприятиях, в торговых залах и складах при магазинах с применением технологии Штрих-кодирования

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

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

1 стартмани

09.09.2019    1278    3    @lexandr    7    

Пример простого и приятного внешнего HTML интерфейса для мобильного приложения

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

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

5 стартмани

05.09.2019    5494    53    Baksheev-Nikita    12    

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

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

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

1 стартмани

07.08.2019    8421    8    chemezov    8    

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

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

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

1 стартмани

01.10.2015    53579    44    pbazeliuk    18    

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

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

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

1 стартмани

18.07.2019    5782    16    savostin.alex    5    

Инвентаризация на мобильном устройстве. УТ 10

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

Мобильное приложение и обработка выгрузки для инвентаризации в УТ 10.

2 стартмани

22.06.2019    4071    6    olejnikov_m    0    

Мобильное приложение "Сбор заказов" версия 2.0.1

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

Приложение «Сбор заказов» разрабатывалось и разрабатывается для хранения и накопления данных от торговых представителей и автоматического обмена данными с программой учёта на базе платформы 1С:Предприятие. Мобильное приложение написано на технологии мобильной платформы 1С:Предприятие. Механизм обмена данных происходит посредством почтового сервера. В дальнейшем будет реализован механизм непосредственного доступа приложения к учётной системе через прямое интернет-соединение. FTP-соединение не работает как надо, так что будем довольствоваться тем, что есть... :)

4 стартмани

06.06.2019    5607    2    yarsort    10    

Давайте подружим 1С и Android. Часть 1 - постановка задачи и подход к решению Промо

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

Серия уроков по созданию простейшего приложения на платформе Android для взаимодействия с 1С.

1 стартмани

29.02.2016    29313    40    solarisman    32    

Мобильное приложение 1С: Список покупок и анализ расходов

Мобильная разработка Финансовый учет и бюджетирование (FRP) Финансовый учет и бюджетирование (FRP) v8 v8::Mobile Домашние учет и финансы Россия УУ Абонемент ($m)

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

1 стартмани

06.06.2019    7776    28    vasilievil    5    

Event Management - мобильное приложение для управления мероприятиями (Android)

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

Event Management - мобильное приложение для управления мероприятиями. Отлично подойдет event-агентствам, свадебным организаторам, а также тем, кто проводит консультации, тренинги и т.д. Работает на Android (проверено на версии 5.1).

4 стартмани

31.05.2019    4790    3    yuriy_lokhonya    1    

[Расширение] для подключения мобильного устройства к УТ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    9991    32    informa1555    22    

Как сделать простое мобильное веб-приложение в 1С Промо

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

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

1 стартмани

04.06.2014    54357    78    rtnm    24    

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

Мобильная разработка Финансовый учет и бюджетирование (FRP) Финансовый учет и бюджетирование (FRP) v8 Домашние учет и финансы УУ Абонемент ($m)

Мобильное приложение по учету личных финансов, имеется возможность вести учет по банкам, по валюте сканировать чеки, вести учет по статьям движения денежных средств, реализована возможность резервного сохранения данных и синхронизации с приложением на ПК. Имеется демо-версия и собранный apk файл. Тестирование производилось Android 7.0 1С:Предприятие 8.3 (8.3.14.1694) Мобильная платформа 1С:Предприятия 8.3.14.53.

1 стартмани

26.05.2019    4677    2    o.kovalev    4    

Оффлайн телефонный справочник для IOS и Android

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

Как сделать телефонный справочник компании на мобильном телефоне для IOS, если у тебя android, бюджет в 100 долларов, несколько стартмани, а ты мастер программирования только в 1С? + БОНУС, как в компании бесплатно использовать телефонный справочник IOS и Android.

1 стартмани

20.05.2019    5854    2    rujiy_kot    2    

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

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

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

3 стартмани

04.05.2019    15676    63    MarkoSokolov    47    

Создание и управление интернет магазином на Android в режиме "Online" Промо

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

“DjanorgStore-Client” – обработка для управления в режиме "onLine" контентом приложения интернет магазина на Android платформах

1 стартмани

08.10.2012    22747    6    Kosigo    22    

Управление задачами (мобильное приложение)

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

Конфигурация "Управление задачами" для мобильного приложения.

2 стартмани

29.04.2019    5159    11    noprogrammer    0    

EGAIS Scan - приложение для ТСД

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

Каждый, кто занимается торговлей алкогольной продукцией, сталкивался с проблемами сканирования акцизных марок и трудностями при взаимодействии с учетной системой 1С. Приложение EGAIS Scan - простое и оптимальное решение для выполнения быстрой приемки и отгрузки алкогольной продукции.

1 стартмани

17.04.2019    4818    4    MrChe    2    

Управление ТСД Zebra с помощью внешней компоненты для мобильной платформы

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

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

2 стартмани

15.04.2019    6237    18    IgorKissil    4    

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

Мобильная разработка v8 БП2.0 УТ10 УНФ Абонемент ($m)

Партнеры: нативное приложение для просмотра контактов из вашей базы 1С на iPhone c iOS trendy интерфейсом

1 стартмани

29.08.2014    26402    1    playertwo    8    

Андроид активити, разработанное для запуска и сбора информации из мобильного приложения 1С 8.3

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

Активити доступно из кода мобильного приложения 1С 8.3. Может использоваться как часть приложения при приемке автомобиля на предприятиях автосервиса. По сути является модальным диалогом, для внесения данных по осмотру автомобиля при приемке/передаче.

1 стартмани

10.04.2019    4284    0    hiEnergy    1    

Мобильный менеджер

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

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

1 стартмани

09.04.2019    3818    1    ziercool    1    

Подкасты сайта "Эхо Москвы" в мобильном приложении 1С

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

Данная разработка показывает возможности мобильного приложения от 1С на примере получения данных с сайта радиостанции "Эхо Москвы" и последующего проигрывания мультимедиа.

1 стартмани

09.03.2019    4201    2    NovPas    6    

Подписи для 1С

Мобильная разработка Документооборот и делопроизводство Документооборот и делопроизводство v8 Россия Абонемент ($m)

Получение подписей в Мобильной платформе 1С с помощью приложения.

1 стартмани

28.02.2019    5987    2    Grivba    7    

Альтернатива для "ПоказатьВыборИзСписка" и "ПоказатьВопрос" для приложений на Мобильной Платформе (УФ)

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

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

1 стартмани

04.02.2019    5267    0    HorusTheOne    0    

Внешние компоненты мобильной платформы 1С для ОС Андроид

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

На трех простых примерах описана процедура разработки внешних компонент для Андроид. Статья написана по мотивам доклада на конференции INFOSTART 2018 EDUCATION.

31.01.2019    14105    0    IgorKissil    24    

Мобильное приложение для формирования заказов. Агент

Мобильная разработка Управление торговлей Управление взаимоотношениями с клиентами (СRM) Оптовая торговля Розничная торговля Управление взаимоотношениями с клиентами (СRM) Оптовая торговля Розничная торговля v7.7 v8 Оптовая торговля, дистрибуция, логистика УУ Абонемент ($m)

Мобильное приложение на платформе Андроид для формирования заказов клиентов. Основное предназначение - работа торговых агентов, представителей, что включает в себя: список клиентов с адресами, телефонами, историей взаиморасчетов; список товаров с остатками, с несколькими типами цен; составление заявки; регистрация поступления оплаты; отслеживание координат. Приложение можно состыковать с 1С любой версии. Поддерживаемые протоколы передачи: файловый (FTP), Web-service, HTTP-service.

1 стартмани

30.01.2019    7241    5    ruslan_hut    2