В современной складской логистике часто возникает необходимость оперативного сканирования штрихкодов, но покупка профессиональных терминалов сбора данных (ТСД) не всегда оправдана. В этой статье мы разберем, как превратить обычный смартфон на Android в полноценный инструмент для работы с 1С, рассмотрим популярные приложения и выясним, как обеспечить стабильную связь между устройствами.
Для начала проанализируем доступные варианты бесплатного или условно-бесплатного программного обеспечения, которые позволяют передавать данные со смартфона в базу 1С. На практике хорошо зарекомендовали себя следующие решения:
Одной из главных жалоб пользователей является нестабильность Bluetooth-подключения. Рассмотрим подробнее, почему это происходит. Bluetooth имеет ограниченный радиус действия (обычно до 10 метров), и любые препятствия в виде стен или стеллажей приводят к разрыву сессии. После разрыва связи часто требуется ручное переподключение, что крайне неудобно для кладовщика.
Чтобы избежать этих проблем, рекомендуем использовать передачу данных по Wi-Fi или через HTTP-сервисы. Выясним, какие настройки для этого потребуются:
Для более продвинутых интеграций, например, под устройства типа Атол лайт или обычные смартфоны, эффективнее всего использовать обмен данными в формате JSON. Это позволяет передавать не только сам штрихкод, но и количество товара, его наименование и другие метаданные. Проанализируем пример структуры данных, которую мобильное приложение может отправлять в 1С:
{
"DeviceID": "Smartphone_01",
"ScanData": [
{
"Barcode": "2000000012345",
"Quantity": 1,
"Timestamp": "2023-10-27T10:15:00"
},
{
"Barcode": "4601234567890",
"Quantity": 5,
"Timestamp": "2023-10-27T10:16:30"
}
]
}
На стороне 1С для приема таких данных обычно создается HTTP-сервис. Разберем по шагам, как программно обработать входящий поток данных в модуле сервиса:
Функция ПринятьДанныеСканирования(Запрос)
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(Запрос.ПолучитьТелоКакСтроку());
Данные = ПрочитатьJSON(ЧтениеJSON);
ЧтениеJSON.Закрыть();
Для Каждого СтрокаТЧ Из Данные.ScanData Цикл
// Здесь реализуем логику поиска товара по штрихкоду
// и добавления в документ "Сборка товаров" или "Инвентаризация"
Штрихкод = СтрокаТЧ.Barcode;
Количество = СтрокаТЧ.Quantity;
КонецЦикла;
Возврат Новый HTTPСервисОтвет(200);
КонецФункции
Не стоит забывать о штатном механизме — 1С:Мобильный клиент. Рассмотрим его преимущества:
СредстваМультимедиа.СканироватьШтрихКод. Это избавляет от необходимости устанавливать сторонние драйверы.Apache или IIS, что позволяет подключаться к ней из любой точки склада через Wi-Fi.Посмотрим, как выглядит простейший вызов сканера в мобильном приложении:
&НаКлиенте
Процедура КомандаСканировать(Команда)
ОбработкаСканирования = Новый ОписаниеОповещения("ЗавершениеСканирования", ЭтотОбъект);
СредстваМультимедиа.ПоказатьСканированиеШтрихКодов("Наведите камеру на код", ОбработкаСканирования);
КонецПроцедуры
&НаКлиенте
Процедура ЗавершениеСканирования(Результат, ДополнительныеПараметры) Экспорт
Если Результат <> Неопределено Тогда
ТекстШтрихкода = Результат.Значение;
// Обработка полученного кода
КонецЕсли;
КонецПроцедуры
При внедрении системы сканирования для сотрудников в возрасте (например, для опытных кладовщиков), необходимо учитывать следующие моменты:
Таким образом, мы выяснили, что для стабильной работы сканера на базе смартфона лучше отказаться от Bluetooth в пользу Wi-Fi или HTTP-сервисов. Использование специализированного ПО типа Штрих-код комбайн или мобильного клиента 1С позволяет организовать полноценный складской учет с минимальными затратами.