При старте в мобильной разработке на 1С часто возникает множество вопросов, особенно если стоит задача автоматизировать складские операции: сканирование товаров, проведение инвентаризации, просмотр остатков с помощью ТСД на Android. Разберем ключевые концепции, с которых стоит начать, и ответим на самые частые вопросы новичков.
Это первый и самый важный выбор, который определяет всю архитектуру будущего приложения. Хотя названия похожи, подходы кардинально различаются. Проанализируем оба варианта, чтобы понять их преимущества и недостатки.
1. Мобильный клиент
Представьте, что мобильный клиент — это аналог «тонкого клиента» или «веб-клиента», но для смартфона или ТСД. Он не хранит данные на устройстве (кроме кэша для интерфейса) и работает в режиме постоянного подключения к основной базе данных через интернет (Wi-Fi или мобильная сеть).
1cem-client подключается к этой опубликованной базе и, по сути, просто отображает ее интерфейс, адаптированный под мобильный экран.Вывод: Мобильный клиент — идеальный выбор для корпоративных задач, где есть стабильный интернет, а критически важна работа с актуальными данными. Для автоматизации склада это самый простой и быстрый путь.
2. Мобильная платформа
Это полноценная среда для создания автономных (standalone) мобильных приложений. Такое приложение устанавливается на устройство, имеет собственную локальную базу данных (в формате SQLite) и может работать полностью оффлайн.
Вывод: Мобильная платформа нужна для сценариев, где работа оффлайн является обязательным требованием. Например, для торговых представителей "в полях" или для очень больших складов с "мертвыми зонами" Wi-Fi.
Для задачи автоматизации склада с ТСД начнем с самого простого варианта — мобильного клиента. Разберем по шагам, как его запустить.
1cem-client...apk и установите его на ваш ТСД под управлением Android.http://имя_сервера/имя_базы. Укажите логин и пароль пользователя 1С.Важный момент: Современные конфигурации, построенные на Библиотеке стандартных подсистем (БСП), часто уже содержат встроенные драйверы для торгового оборудования, включая сканеры штрихкодов ТСД. Это значительно упрощает настройку.
Рассмотрим еще два важных аспекта: лицензии и использование стандартных библиотек.
Вопрос лицензирования: Если вы разрабатываете приложение для внутреннего использования (например, для своих кладовщиков), и у вашей компании уже есть клиентские лицензии "1С:Предприятие 8", то, как правило, докупать ничего не нужно. Подключение через мобильный клиент с точки зрения сервера 1С — это просто еще один сеанс, который занимает одну клиентскую лицензию из вашего пула.
Библиотека стандартных подсистем (БСП) для мобильных: Да, существует специальная, адаптированная версия БСП для мобильных приложений. Ее использование крайне рекомендуется, чтобы не изобретать велосипед. Она включает в себя готовые механизмы для:
Один из частых источников путаницы для начинающих — понимание, где выполняется серверный код. Рассмотрим пример.
&НаСервереБезКонтекста
Функция ТестНаСервере()
Возврат "ОК2";
КонецФункции
&НаКлиенте
Процедура КомандаТест(Команда)
Сообщить(ТестНаСервере());
КонецПроцедуры
Где в данном случае находится "сервер" и где выполняется функция ТестНаСервере()?
&НаСервере будет исполняться в контексте локальной базы данных прямо на ТСД.Это принципиальное отличие, которое важно понимать при разработке и отладке.
При настройке обмена данными или работе с веб-сервисами можно столкнуться с ошибками. Одна из самых частых — ошибка авторизации.
Ситуация: Вы пытаетесь создать WSОпределение или обратиться к веб-сервису, но получаете пустое сообщение или видите в логах веб-сервера (например, Apache) ошибку вида:
"GET /mobiletest/ws/mobile.1cws?wsdl HTTP/1.1" 401 -
Причина: Код 401 Unauthorized однозначно говорит о проблеме с правами доступа. Веб-сервер не смог авторизовать запрос от вашего мобильного приложения.
Что делать:
default.vrd) на веб-сервере. Проверьте, что в нем корректно указаны параметры аутентификации (например, ws basic="true").http://.../mobile.1cws?wsdl) в обычном браузере на компьютере или на самом мобильном устройстве. Если браузер запросит логин и пароль, и после их ввода вы увидите XML-описание сервиса, значит, сам сервис работает, и проблема именно в том, как мобильное приложение передает аутентификационные данные.Начиная с этих базовых знаний, вы сможете сделать первые уверенные шаги в мобильной разработке на 1С и создать полезное приложение для автоматизации складских процессов.