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

27.10.21

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

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

Не прошло и три года...

Всем добра!

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

 

Куда, как?

Если у вас нет дома 1С, ломать ее вас душит совесть, а купить - жаба, то освоить разработку почти всего на 1С не составляет никакой проблемы. Для этого достаточно нажать кнопку со своей ОСью и ввести пару слов в "анкете" - Тыдыщь...

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

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

 

ТЕСТОВАЯ КОНФА С ПРАЙСОМ

Итак, давайте запилим тестовую конфу с прайсом, загрузим его с какого-нить экселя, сделаем отображение картинки в форме элемента номенклатуры и замутим транспорт с помощью веб-сервисов. Погнали!

 

1. Справочник с номенклатурой.

Ну тут все просто:

  • Создадим справочник
  • Добавим парочку реквизитов (ПолнНаименование, Цена)
  • Добавим реквизит, в котором будем хранить картинку - "фото", укажем тип значения - "ХранилищеЗначений"

Дальше создадим форму списка и форму элемента, в которой будем показывать картинку.

 

 

Ну форма проста до безобразия: Код, Наименование, ПолнНаименование и Картинка (поле внизу).

Лирическое отступление...

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

В реквизиты формы добавляем реквизит "Картинка", куда будем класть и ложить адреса временного хранилища.

 

 

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

 

 

Итак, что тут с кодом не понятно? Элементарно же, да?

 

Отображение картинки на форме

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

2. Проверим, есть ли там у нас что в хранилище значений. Да, я лезу туда через много точек - имею право.

3. Если есть, то покладем и положим это во временное хранилище, а адрес засунем в реквизит "Картинка".

С этим все.

Теперь давайте разберемся, как загрузить картинку из файла (например, для нового товара или для старого, у которого картинки нет, или у которого картинка по какой-то причине нас перестала устраивать).

 

Загрузка картинки из файла

1. Для реквизита формы "Картинка" в подменю я добавил команду "УстановитьФото", хотя мог бы сделать это и через нажатие на картинку (в мобильном приложении именно так и будет сделано).

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

3. При любом действии с диалогом у нас отрабатывает оповещение, в котором мы сначала проверяем, есть ли вообще что-то в переменной "рез" (ратующие за права переменных иметь хорошее имя - плачьте!), и если там ничего нет - выходим.

4. Ежели у нас там что-то есть, то файл мы передаем в процедуру "УстановитьФотоНаСервере", туда же передаем и сцылку (ибо процедура у нас без контекста).

5. Ну а дальше просто засовываем двоичные данные в хранилище значений с максимальным сжатием, пихаем это все в объект и записываем.

6. Дальше надо перечитать текущий объект (мы его изменили) и установить картинку в поле - об этом мы уже говорили.

Форма номенклатуры готова. Перейдем к веб-сервисам...

 

2. Веб-сервисы!

Ну тут тоже все дико элементарно. Создаем веб-сервис как-то так:

 

 

Здесь вроде как важно выбрать пакет XDTO. Например, пакет с ядром основных типов в 1С, который выбрал я. Ну и все эти URI, имена веб-сервисов и... Блин, больше ничего нет...

Добавим две операции:

 

 

1. Операция GetGoods, возвращающая... да, то же самое хранилище значений, как в случае с картинкой.

2. Операция SetPhoto с двумя параметрами - Код и Фотка. По коду мы будем идентифицировать наш товар, а фотка будет содержать фотку...

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

 

 

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

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

 

Мобильное приложение

Итак, добрались мы с вами до мобильного приложения. Я, обычно, ничего не горожу в нем - там не надо никаких справочников, документов, регистров и прочей неведомой фигни. Мобильное приложение служит для того, чтобы быть устройством ввода для основной базы, а не для того, чтобы хранить в себе миллион непонятных сущностей, которые в нашем конкретном случае уж точно не нужны.

Итак, архитектура всего этого проста до безобразия:

1. Константа с адресом сервера, на котором опубликован наш веб-сервис.

2. Общая форма MAIN, в которой все и будет работать.

 

 

В форме у нас две закладки (Товары и Настройка), в виде закладок указано, что они отображаются для тачскрина. На первой закоадке товары с фоткой, на второй - настройки (поле для ввода адреса сервера с веб-сервисом):

 

 

Ну и много кода:

 

 

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

 

 

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

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

 

 

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

Ну и вот что получилось:

 

 

А здесь то, что в итоге получилось в тестовой базе с прайсом:

 

 

А что там по поводу экселя?

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

&НаСервереБезКонтекста
Процедура ЗагрузитьТоварыНаСервере( ДД, Расширение )
	ИФ = ПолучитьИмяВременногоФайла( Расширение );
	ДД.Записать( ИФ );
	
	ТД = Новый ТабличныйДокумент;
	ТД.Прочитать( ИФ, СпособЧтенияЗначенийТабличногоДокумента.Текст );
	
	Ч = Новый ОписаниеТипов("число", Новый КвалификаторыЧисла( 15, 2, ДопустимыйЗнак.Неотрицательный ) );
	
	НачатьЧтение = Ложь;
	
	Для А = 1 По ТД.ВысотаТаблицы Цикл 
		
		Если НачатьЧтение Тогда
			
			Ц = СокрЛП( ТД.Область(А, 4).Текст );
			
			Если НЕ ПустаяСтрока( Ц ) Тогда 
				
				Наименование = СокрЛП( ТД.Область(А, 3).Текст );
				Ссылка  = Справочники.Номенклатура.НайтиПоНаименованию( Наименование );
				
				Если ПустаяСтрока( Ссылка ) Тогда 
					
					О = Справочники.Номенклатура.СоздатьЭлемент();
					О.Наименование = Наименование;
					О.ПолнНаименование = Наименование;
					
					О.Цена = Ч.ПривестиЗначение( 
						СтрЗаменить(
							СтрЗаменить(
								СтрЗаменить(Ц, " руб.", ""),",","."
							)," ", "")
						);

					О.Записать();

				КонецЕсли;

			КонецЕсли;

		ИначеЕсли ТД.Область(А, 4).Текст = "Цена" Тогда 

			НачатьЧтение = Истина

		КонецЕсли;

	КонецЦикла;

КонецПроцедуры

&НаКлиенте
Процедура ЗагрузитьТовары(Команда)
	
	Длг = Новый ДиалогВыбораФайла( РежимДиалогаВыбораФайла.Открытие );
	Длг.Фильтр = "*.xls|*.xls|*.xlsx|*.xlsx";
	Длг.Показать( Новый ОписаниеОповещения( "ПриВыбореФайлаКартинки",ЭтаФорма ) );
	
КонецПроцедуры

&НаКлиенте
Процедура ПриВыбореФайлаКартинки(Рез, Доп) Экспорт 
	Если Рез = Неопределено Тогда Возврат КонецЕсли;

	фл = Новый Файл( Рез[0] );
	ЗагрузитьТоварыНаСервере( Новый ДвоичныеДанные(Рез[0]), Фл.Расширение );
	ОповеститьОбИзменении(Тип("СправочникСписок.Номенклатура"));
КонецПроцедуры

Файл был какой-то такой (первый прайс, попавшийся в гугле):

 

 

*********************************************************************************

*****************************  Все, всем пока и удачи! ************************************

*********************************************************************************

См. также

1С-программирование Мобильная разработка Программист Стажер Платные (руб)

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

08.06.2023    9538    0    Infostart    0    

66

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

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

2880 руб.

03.12.2018    58564    192    103    

172

SALE! 25%

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

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

13200 9900 руб.

27.12.2021    37172    99    161    

193

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

Простой мобильный ТСД (терминал сбора данных) сканер для 1С для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически.

2000 руб.

22.04.2019    95907    562    187    

316

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

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

7000 руб.

25.05.2022    4261    1    0    

6

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

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

1 стартмани

23.08.2024    1042    5    informa1555    1    

13

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

В этом релизе собрано много нового из области интерфейса, связи, хранения и важные новые способы управления. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

1 стартмани

25.06.2024    2397    25    informa1555    0    

33
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ITSun 28.10.21 09:11 Сейчас в теме
А зачем кто-то минус поставил, личная неприязнь?
serverstar; m_aster; 13D; ubnkfl; +4 Ответить
2. SeiOkami 3501 28.10.21 09:31 Сейчас в теме
(1) всегда найдутся минусаторы 😂
serverstar; m_aster; ls600; RocKeR_13; Fox-trot; +5 Ответить
4. ITSun 28.10.21 09:55 Сейчас в теме
(2) Ну, обычно объясняют "-", а тут молча :)
m_aster; ls600; sapervodichka; +3 Ответить
31. Sergafan10 29.10.21 08:28 Сейчас в теме
(1) минуснули те, у кого потекла кровь из глаз от "номенклатЦры"
rovenko.n; +1 Ответить
32. starik-2005 3080 29.10.21 09:04 Сейчас в теме
(31)
у кого потекла кровь из глаз от "номенклатЦры"
Прикрепленные файлы:
Lera_1c; maksa2005; +2 Ответить
58. Абигоп-НахУрт 29.07.22 11:37 Сейчас в теме
(1) это видимо потому что "финал - механизм фотографирования мобильной платформы" не раскрыт. Как фотографировать-то?
59. starik-2005 3080 30.07.22 08:16 Сейчас в теме
3. BackinSoda 28.10.21 09:53 Сейчас в теме
Прикольно) минусы, наверное, за именование переменных в стиле "Ч" и "Ц"
5. ivanov660 4566 28.10.21 10:50 Сейчас в теме
(3)Тяжело воспринимаются переменные, написание которых совпадают в английском и русском - О,А,С, а вот как раз Щ,Ч и Ц - однозначно трактуются.
G.Shatrov; axelerleo; +2 Ответить
30. Sergafan10 29.10.21 08:26 Сейчас в теме
6. Lapitskiy 1061 28.10.21 11:45 Сейчас в теме
переменные из одной буквы во-первых, не по стандарту, а во-вторых - попробуйте потом найти поиском в большом коде упоминание этой переменной, получите много интересного и бесполезного результата. Далее - что такое "Ц" глядя на переменную? Ну ладно, положа руку на сердце, можно принять это в переменной цикла, но когда "О" - это объект - тут вообще нет слов (и букв).
ПС - я не ставил минус, если что :)
Ankare; collider; cleaner_it; Irwin; begemot; m_aster; Дмитрий74Чел; +7 Ответить
10. Yashazz 4779 28.10.21 11:57 Сейчас в теме
(6) Учитывая тот хамский беспредел, который творится в хвалёной БСП, говорить что-то про "стандарты" смешно. В серьёзных языках запросто используют однобуквенные переменные десятками лет. А поиском в большом коде всё равно ни черта нормально не найдёшь, особенно учитывая стиль написания в 1С.
torch; axelerleo; starik-2005; +3 5 Ответить
14. starik-2005 3080 28.10.21 12:24 Сейчас в теме
(6) я использую переменные из одной буквы только в "замыканиях", т.е. локальном небольшом коде, видимом на одном экране. Заметьте, имена функций очень даже. По поводу Ц - это преобразователь в число в данном случае (я, обычно, использовал для целого, но в данном случае Ц <--> Ч), а О/С/Д и т.д. - это переменные в процедурах и функциях на три строки.
jack_kkm; kote; brr; +3 Ответить
7. eskor 98 28.10.21 11:46 Сейчас в теме
Плюсанул. Хорошая статья, особенно подача.
О том, чего многие боятся, просто и со вкусом. :)
m_aster; user1230640; +2 Ответить
8. quazare 3764 28.10.21 11:50 Сейчас в теме
Еще в середине 10-ых годов создать мобильного клиента была целая проблема - те кто работал с торговыми представителями - знают... сейчас же можно создать систему (при должном опыте) за 1 день.... и то с фичами какими-нибудь)
9. SGordon1 28.10.21 11:52 Сейчас в теме
Программа не взлетит без регистра сведений ШКНоменклатцры ( именно так кстати l0(( или функцию GetGoods придется править?
13. starik-2005 3080 28.10.21 12:21 Сейчас в теме
(9) есть такое. Очепятки и копипаста рулит!
11. Yashazz 4779 28.10.21 11:58 Сейчас в теме
Спасибо за хорошие новости, но статья почти ни о чём - этот код большинство и само найдёт либо скопитырит, а вот моменты публикации и тестирования хорошо было бы осветить. К 20-му релизу там есть новинки, и в плане сервиса размещения, и вообще. А тут об этом тишина и после куска про эксель текст обрывается, словно автору надоело.
begemot; marku; starik-2005; Дмитрий74Чел; +4 2 Ответить
12. starik-2005 3080 28.10.21 12:20 Сейчас в теме
(11)
А тут об этом тишина и после куска про эксель текст обрывается, словно автору надоело.
В действительности кусок про эксель я вообще не хотел засовывать в статью, но потом подумал, что кнопка есть загрузки, упоминание про загрузку есть, а кода нет. Вот и решил добавить...

ЗЫ: часто читая достаточно большие произведения ловлю себя на мысли, что у авторе дедлайн от издательства и ближе к концу все внезапно разруливается совершенно фантастическим (даже для фантастического произведения) образом.
15. Yashazz 4779 28.10.21 12:24 Сейчас в теме
(12) а про публикацию, при этом, ни слова? Или "ждите в следующей серии"?)
Дмитрий74Чел; +1 Ответить
16. starik-2005 3080 28.10.21 12:27 Сейчас в теме
(11)
моменты публикации и тестирования хорошо было бы осветить
По поводу публикации и отладки, то я на этом сайте десятки таких статей видел. Здесь же основная задумка в том, что ты стажер и вот хочется тебе получить результат условно за полчаса (ну ок, за два часа), и чтобы это было работающее нечто. И вот тут версия для обучения программирования, в которой даже экселевский файл открыть можно, тебе вполне подойдет.
17. SGordon1 28.10.21 12:28 Сейчас в теме
Если устанавливаем фотку когда номенклатура не записана - нужна проверка или принудительная запись?
18. starik-2005 3080 28.10.21 12:31 Сейчас в теме
(17)
нужна проверка или принудительная запись
Проверка или запись, конечно же, нужна, иначе получим исключение. Но я это пропустил некоторым образом умышленно.
19. SGordon1 28.10.21 12:35 Сейчас в теме
(18) А не подскажете платформа шалит или что то в коде еще потеряно - если в контексном меню картинки выбираю посмотреть картинку- все падает нарушение целостности системы .... Хотя если зум покрутить или что еще то вроде срабатывает?
20. starik-2005 3080 28.10.21 12:41 Сейчас в теме
(19)
платформа шалит
У меня такого поведения нет. ВИН10 на виртуалбоксе, скачанная с мелкомягкого сайта неделю назад (установлена с опцией "у меня нет вашего чертова ключа"), 1С скачана вчера (учебная версия, которая по сцылке).
21. starik-2005 3080 28.10.21 12:44 Сейчас в теме
(19) скриншот.
Прикрепленные файлы:
22. RustIG 1728 28.10.21 12:47 Сейчас в теме
(0) спасибо за контент, за идею, за пример реализации!
вопрос - а можно за 30 минут веб-сервер развенуть? да так, чтобы он защищенный был от ддос-атак?
на домашнем пк (ноуте) с не статичным айпи?
23. starik-2005 3080 28.10.21 12:56 Сейчас в теме
(22)
а можно за 30 минут веб-сервер развенуть? да так, чтобы он защищенный был от вас ддос-атак?
В принципе можно, хотя, если это на 1С, то будет трудно - сколько она запросов в секунду отдаст? Если ограничить пакеты только определенным пулом IP, а остальные пакеты просто резать, то вполне можно.

Вообще, развернуть веб-сервер Апач - это дело ТРЕХ минут (набрать в гугле apace2, перейти по сцылке, найти бинарники, найти для винды, выбрать первый, жамкнуть на соответствующем дистрибе (для обучения программированию 32-битная в винде мне попалась), распаковать скачанное на "С", запустить СМД от админа, СД с:\апач24\бин, хттпд.ехе -к инсталл, хттпд.ехе -к старт - все). Ну а дальше главное в конфигуратор 1С заходить от админа системы, а там просто галочки. Ну а все эт эСэСэЛ - для этого статей тоже море.
24. starik-2005 3080 28.10.21 12:58 Сейчас в теме
25. RustIG 1728 28.10.21 14:12 Сейчас в теме
26. Дмитрий74Чел 238 28.10.21 14:59 Сейчас в теме
На статью не тянет. Так, заметки какие-то. Код страшный. Статья ради статьи.
С одной стороны, написано максимально коротко, без разъяснений - т.е. для тех кто в курсе. Тех кто знает. С другой - а зачем тем кто знает такой "набросок" вместо "картины"?
Берет учебную платформу. Ну ок, значит для новичков. Но не пишет как создать мобильное приложение, как поместить в смартфон, даже ссылок на статьи нет. Т.е. это новичок уже должен уметь сам?!
Простыни кода и картинок не удосужился поместить в сворачиваемые области.
За что плюсы-то?!
Прикрепленные файлы:
comaa; Irwin; Levey; jack_kkm; Lerka2611; marku; +6 1 Ответить
27. starik-2005 3080 28.10.21 15:05 Сейчас в теме
(26)
На статью не тянет. Так, заметки какие-то. Код страшный. Статья ради статьи.
Код страшный в чем?
С одной стороны, написано максимально коротко, без разъяснений - т.е. для тех кто в курсе. Тех кто знает. С другой - а зачем тем кто знает такой "набросок" вместо "картины"?
Берет учебную платформу. Ну ок, значит для новичков. Но не пишет как создать мобильное приложение, как поместить в смартфон, даже ссылок на статьи нет. Т.е. это новичок уже должен уметь сам?!
У 1С есть сервис для создания APK, гемора с засовыванием этого всего в смарт теперь не должно быть.

И что конкретно необходимо разъяснить? По пунктам?
Простыни кода и картинок не удосужился поместить в сворачиваемые области.
А зачем?
За что плюсы-то?!
Завидуйте молча.
28. starik-2005 3080 28.10.21 15:39 Сейчас в теме
(26) картинка зачетная. Свои статьи почитайте - есть где поплакать.
45. m_aster 112 18.11.21 05:02 Сейчас в теме
(26)Зря вы так, столько негатива. Код нормальный, аккуратный. По переменным человек постебался, юмор вообще вещь полезная), хотя здесь все также удобоваримо, примите проще.
По поводу платформы вначале сказал о бесплатном варианте, что выгодно для многих и не только для начинающих. О взломе(что неуместно, вы сами понимаете) и покупке также упомянул. Кстати, новичок может купить комплект для разработчика с большой скидкой, это если у него есть сертификат от уровня Специалиста. Будет к чему стремиться.
Изложил основу, саму суть, остальное все можно при желании доработать самостоятельно. Столько курсов сейчас, бесплатных материалов по теме, только пользуйся.
В мое время, я учился с 1985-го, в Политехе, интернета и в помине не было. Нам давали лекции по серьезным предметам(они практически все серьезные были, не говорю о Философии и Истории КПСС) так, что оставалось множество "отсылов" на доп. материал по теме. Который ты должен, прежде всего для себя конечно, проработать самостоятельно. А это нужно идти в библиотеку, а может не повезти и нужной литературы уже нет, на руках. Вот так и "догоняли" до нужного уровня свои знания. А как иначе. Никто ничего за тебя делать не будет. Это не в школе, где тебе учителя разжевывали все и с ложечки кормили. Хотя я и там все сам делал. Только так. Я знаю как минимум двоих таких, мол, научи меня программировать)) Как учить человека если он не понимает зачем ему это? Если хочет, сам все найдет, освоит и еще спасибо скажет. Мне кажется конструктивнее в каждой вещи искать и видеть рациональное и полезное. Многие и 1С критикуют. Есть отдельные моменты когда реально есть за что. Это у всех есть, никто не совершен. Но лучше все же искать положительное и функциональное, которого гораздо больше. Это и приятнее и полезнее, и для себя и для других.
san4o; starik-2005; +2 Ответить
29. quazare 3764 28.10.21 18:20 Сейчас в теме
На самом деле хорошая статья - практика с объяснениями. это не из серии как космические корабли бороздят просторы оперного театра!
33. serverstar 69 29.10.21 09:49 Сейчас в теме
Учебный пример с юмором от доктора Хауса))
34. starik-2005 3080 29.10.21 09:53 Сейчас в теме
(33)
от доктора Хауса
Доктор Хаус - это Ильдарович. Я так, мимо проходил...
serverstar; +1 Ответить
35. serverstar 69 29.10.21 11:11 Сейчас в теме
36. starik-2005 3080 29.10.21 12:25 Сейчас в теме
(35)
but still
я не шпрехаю, меня в школе заставили фрэнч учить, а он мне вообще не сдался. Отчасти из-за этого я против школ )))
37. dsdred 3530 29.10.21 15:33 Сейчас в теме
Плюсану. Но почему веб сервисы а не http?
38. starik-2005 3080 29.10.21 16:36 Сейчас в теме
(37)
а не http
HTTP умудряются скушать лицуху и подвиснуть, что делает повторное обращение к ним трудновыполнимым, особенно если мобильное приложение было перезапущено.

ЗЫ: ну и на мой скромный взгляд на HTTP не получиться все это организовать в две строчки, пользуясь типами 1С - нужно будет городить JSON запись и чтение, хотя оно тоже искаропки, но с датами так просто работать не будет - нужно будет рассказать ему о датах в полях...
39. Nefilimus 75 01.11.21 15:17 Сейчас в теме
Интересно, тем более в данный момент начинаю работать с мобилками. Спасибо за статью
40. starik-2005 3080 01.11.21 15:19 Сейчас в теме
(39)
Спасибо за статью
Всегда пожалуйста. Дальше планирую переработать данное приложение на REST-API, но не на 1С, а на С++, чтобы лицензии не тратить...
Nefilimus; +1 Ответить
41. Nefilimus 75 01.11.21 15:22 Сейчас в теме
(40) Если будет желание и время, можете пожалуйста написать статью как скомпилировать приложения для İOS? Во всех инструкциях, что я читаю, указано для Андроид
42. starik-2005 3080 01.11.21 15:24 Сейчас в теме
(41)
как скомпилировать приложения для İOS? Во всех инструкциях, что я читаю, указано для Андроид
С 20-й версии 1С просто заходите во все функции (или как там сейчас это называется) и там в доп.обработках есть публикатор мобильного приложения. Дальше вводите свой эйпловский ID за сто баксофф, ну и далее, далее, QR-code...
Nefilimus; +1 Ответить
43. Nefilimus 75 01.11.21 15:25 Сейчас в теме
(42) Понял, спасибо огромное )
53. Yashazz 4779 26.01.22 10:54 Сейчас в теме
(42) а можно с этого момента подробнее? Достаточно швырнуть в меня сцылочкой.
54. starik-2005 3080 27.01.22 20:10 Сейчас в теме
55. Yashazz 4779 27.01.22 20:19 Сейчас в теме
(54) Нюююю... Так я тоже умею. И читать зазеркалье, правда-правда, умею) И статью про бесплатную (а не $99) публикацию/отладку под АйОсь тут видел. Я полагал, кто-то уже родил разжёванные грабли и можно почитать, чего этот сборщик собирает и надо ли теперь, пардон, SDK на сервер ставить, аль не надо... И что ты, аки мудрый гуру, знаешь, где это всё читать.

Пичаль.
44. m_aster 112 17.11.21 21:37 Сейчас в теме
Автору спасибо. Взял в избранное. Давно хотел погрузиться в мобильную версию в связке с web-сервисами. Тут, можно сказать, основы, есть с чего начать. И тот, кому нужно остальное, думаю разберется в этом остальном с успехом. Если нет, тогда этому тому не стоит и пытаться))
Тоже не понимаю "минусаторов". Скажите все вслух, может что-то реально не так(хотя по мне все так).
Вы спасибо лучше скажите, что человек поделился опытом и прежде, чем критиковать, попытайтесь вникнуть в суть того, что он хотел донести, спросите, послушайте, что ответит.
Надо оставить только плюсы, очень много сейчас этих минусов без объяснений, стало бросаться в глаза.
Здесь же портал обмена мнением, полезным опытом, выскажись, лишний раз поддержи, зачем молча негативить.
Нисколько не напрягла статья, код читается и понимается легко и однозначно(единственное, возле скобок я не ставлю пробелы и в теле процедур-функций убираю в большинстве для удобства пробелы между строк для компактности, это имхо), наоборот, тут человек мыслит нестандартно, нескучно. С такими интересно, есть чему поучиться.
Тем более, что он объяснил суть использования однобуквенных переменных(как бы борцы за их права ни плакали)))). Думается, что специалист с таким опытом и про стандарты знает и об остальном в курсе и т.д.
Вы посмотрите типовые конфигурации от 1С. Там конечно в основном все по стандарту, но и там есть нюансы, причем не так редко, суть коллективной разработки.
Когда-то еще в советское время, в политехе, был у нас предмет "Схемотехника". Наши родные книжки читать без тоски было невозможно, с их-то сухим и правильным, официальным и серьезным языком. И как глоток свежего воздуха, по крайней мере так тогда казалось, и легкое потрясение от стиля изложения и свободы мысли была книга "Искусство схемотехники" Хоровица и Хилла.
Прочитал статью и вспомнил, видимо из-за стиля изложения в статье.
46. TyurinArt 97 29.11.21 09:33 Сейчас в теме
(0)При установке apk собранного с помощью "Сервис сборки мобильных приложений" платформа 8.3.20.1613 на телефон redmi 9 miui 12 - выходит сообщение "Приложение не установлено.", на эмуляторах также. Пробовал: перезагружать телефон, чистить память и кеш приложения "Проводник" с помощью, которого открываю apk. Мб кто-то сталкивался и есть решение?

Логи сборки
47. TyurinArt 97 29.11.21 12:00 Сейчас в теме
(46)Причина бы в кюар коде, который формируется для скачивания апк из фабрики по умолчанию для arm64, выбрал вручную arm - установилось без ошибок.

Автору спасибо за статью.
48. starik-2005 3080 29.11.21 13:45 Сейчас в теме
(47)
для arm64, выбрал вручную arm
Тоже предположил, что дело в разрядности...
49. TyurinArt 97 01.12.21 09:35 Сейчас в теме
(0) В мобильной конфигурации создал пользователей с аутентификацией 1С, но при запуске мобильного приложения не запрашиваются логи и пароль. Как настроить авторизацию в мобильном приложении стандартными средствами?
50. starik-2005 3080 02.12.21 23:33 Сейчас в теме
(49)
Как настроить авторизацию в мобильном приложении стандартными средствами?
Никак. Не путайте мобильное приложение и мобильную платформу. Считайте, что мобильное приложение уже авторизовано вводом пина пользователя.

Вообще, странно, что Вы дадите один ТСД десяти человекам, у которых будут разные права ))) Это как права на клавиатуру...
51. user635667 16.12.21 12:58 Сейчас в теме
Здравствуйте. Есть вопрос по мобильной разработке. Вопрос такой: после перезагрузки телефона каждый раз спрашивает доступ к устройству. Нажимаю ок и пока смартфон включен больше не спрашивает. Сообщение выскакивает в любой форме документа, где подключается оборудование(сканер шк). Не могу найти где это можно автоматизировать. в конфигураторе или в самом андроиде.
Прикрепленные файлы:
52. starik-2005 3080 16.12.21 14:34 Сейчас в теме
(51) Ну первое, что приходит в голову, что сейчас используется вариант запроса "Всегда спрашивать". Где это? Ну все зависит от того, как Вы сканер подключали. Я, например, просто перенаправляю сканер на клавиатуру соответствующей софтинкой, а дальше просто подключаю ВК 1С:Native сканер ШК. В итоге таких проблем не наблюдаю при отсутствии условий для их реализации в принципе.
shusha9951; +1 Ответить
56. gunkata 04.02.22 09:22 Сейчас в теме
Из личного опыта. Обмены лучше переписать на HTTP-сервисах, куда как проще отлаживать и понимать. Плюс json наше всё. Так как сейчас, почти все внешние обмены переходят на REST API ( интернет магазины, EDI, ЭДО)
57. starik-2005 3080 04.02.22 13:16 Сейчас в теме
(56) HTTP несут в себе две проблемы:
1. Кушают лицензию.
2. Отсутствует схема, позволяющая без лишнего геморроя обмениваться списком операций, их аргументов и типов.

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

SOAP в данном конкретном примере позволяет сильно упростить обмен, не разбираясь во всех тех операциях, которые есть в HTTP. А статья для совсем новичков.

Кстати, есть у вас какой-нить пример оценки скорости работы SOAP vs HTTP? На сколько одно быстрее другого при идентичной передаваемой информации? На сколько больше кода пришлось написать в HTTP?
60. jack_kkm 35 20.09.22 09:03 Сейчас в теме
Подскажите пожалуйста, можно при сборке apk в сборщике мобильного приложения указать только одну архитектуру для сборки? Сборщик выдает 4 файла под арм, арм64, х86 и х86_64, собирает долго. Версия сборщика 8.3.20.12
61. starik-2005 3080 20.09.22 20:21 Сейчас в теме
(60)
Сборщик выдает 4 файла
Видимо где-то настраивается список платформ, под которые нужно собирать. 1С регулярно сборщик обновляют и добавляют функционал. Предположу, что при настройках по умолчанию сборщик создает пакеты для магазина приложений, поддерживающего все платформы. Я сборщиком не пользуюсь - сейчас есть механизм сборки через сервисы самой 1С, во всех функциях должна быть соответствующая обработка. В итоге приложение собирается на стороне самой 1С, а ссылка передается в телефон через QR-код.
62. user1558189 20.02.23 10:29 Сейчас в теме
Очень хороший пример. Надеюсь, это сработает для меня. Конечно, сначала мне нужно перевести его в понятный мне вид (с кириллицы на латиницу). Спасибо за вашу работу.
63. пользователь 07.09.23 18:51
Сообщение было скрыто модератором.
...
Оставьте свое сообщение