Skip to content

Программа сканирования штрихкодов для терминала сбора данных Casio IT-800R-15

Notifications You must be signed in to change notification settings

sukhe/BarCodeScanner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 

Repository files navigation

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

Часть 3 - ПО для терминала сбора данных Casio IT-800R-15

Содержание

  1. Назначение
  2. Состав комплекса
  3. Общая схема работы программного комплекса
  4. Запуск программы
  5. Загрузка документов в сканер
  6. Сканирование штрихкодов
  7. Выгрузка документов из сканера
  8. Сервисный режим и дополнительные функции
  9. Прочие замечания

1. Назначение

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

Кроме учёта при отгрузке, осуществляется также учёт движения готовой продукции по местам производства/хранения - выходам конвейеров в цехах, складам внутризаводским, складам на ж/д станции. Из всех этих мест продукция может отгружаться потребителям а также может перемещаться между различными складами (не может только возвращаться назад на конвейер).

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

2. Состав комплекса

Комплекс программ состоит из трёх частей:

  1. Часть, написанная на 1С
    • отвечает за ввод первичных документов, печать отгрузочных документов, хранение данных
    • здесь-же, в 1С, реализовано управление промышленным термотрансферным принтером, который печатает штрихкоды на самоклеющихся кислото-термо-износоустойчивых этикетках
  2. Промежуточный сервис
    • запущен на том-же сервере, где расположена 1С
    • обмен данными с 1С осуществляется через COM-соединение
    • обмен дынными со сканерами производится через REST API посредством вэб-сервера IIS
  3. Программа на терминале сбора данных
    • принимает исходные данные (список продукции) через Wi-Fi
    • сканирует штрихкоды, сверяясь со списком
    • передаёт отсканированные данные обратно

3. Общая схема работы программного комплекса

  1. В 1С создаётся и печатается документ на перемещение или отгрузку продукции (содержит количество и тип продукции)
  2. Документ передаётся в склад
  3. Кладовщик сканирует штрихкод в шапке документа и сканер получает этот документ через Wi-Fi
  4. Согласно списку отгружается и сканируется продукция
  5. После окончания отгрузки (или в конце рабочего дня) отсканированные штрихкоды передаются в 1С

4. Запуск программы

При старте программы запрашивается пароль. Пароль состоит из 6 цифр и вводится с цифровой клавиатуры сканера. Введённый пароль сверяется с данными пользователей из файла settings.xml. Если найдено соответствие - из настроек берётся имя пользователя и запускается основная форма приложения.

Форма запроса пароля Основная форма приложения

5. Загрузка документов в сканер

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

Ручной ввод реквизитов документа

При этом сканер должен находиться в зоне действия заводской Wi-Fi сети. Если документ с такими реквизитами не найден или отсутствует связь с сервером - будут показаны соответствующие сообщения об ошибках.

Если документ уже загружен в какой-либо из сканеров, для предотвращения коллизий его повторная загрузка блокируется. То есть, данные по какому-либо документу всегда находятся только в одном сканере. Если сканирование нужно продолжить на другом сканере (например, в другом складе), документ должен быть возвращён из первого сканера на сервер, а затем загружен на второй сканер.

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

6. Сканирование штрихкодов

Перед сканированием штрихкодов должно быть выбрано направление перемещения/отгрузки продукции - откуда и куда. Выбор производится последовательно в трёх списках, выбор в каждом списке отсекает лишние варианты в последующих списках.

Ввод параметров "Откуда-куда" Ввод параметров "Откуда-куда" Ввод параметров "Откуда-куда"

Чтобы сканировать штрихкоды, нужно "зайти в документ". То есть, перейти из основной формы в форму со списком продукции, нажав Enter в списке документов на нужной строке (или нажав стилусом по строке с нужным документом, т.к. у сканера сенсорный экран). Перемещение по списку документов выполняется клавишами сканера вверх/вниз или, опять-же, с помощью сенсорного экрана.

Список продукции документа

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

Если сканирование какого-либо типа продукции ещё не производилось - фон у строки будет белый. Отсканировано меньше, чем необходимо - фон красный. Когда отсканировано нужное количество продукции какого-либо типа - раздаётся многократный звуковой сигнал, срабатывает вибромотор сканера и выдаётся сообщение, что грузить этот тип продукции больше не надо. После этого фон строки с этим типом продукции становится зелёным.

Аналогичная цветовая маркировка применяется и на основной форме - только там она относится не к определённому типу продукции, а к содержимому всего документа.

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

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

Cписок штрихкодов Информация по штрихкоду

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

Во время сканирования штрихкодов подключение к Wi-Fi не требуется. Это позволяет сканировать продукцию в таких местах, где отсутствует заводская беспроводная сеть. Wi-Fi нужен только при обмене с сервером - приёме и отправке документов.

7. Выгрузка документов из сканера

Для отправки документов на сервер необходим доступ сканера к заводской сети через Wi-Fi.

Возможна отправка как полностью заполненного документа, так и документа, в котором продукция отсканирована лишь частично.

После отправки будет выдано сообщение с количеством переданных штрихкодов.

Cообщение о переданных штрихкодах

Если отправка прошла успешно - файл документа автоматически удаляется из сканера.

Если документ не удаляется - значит, он по какой-либо причине не передался на сервер (нет связи с сервером или в 1С не найден соответствующий документ). То есть, при ошибочной передаче данные сканирования не пропадут - удаление производится только после сообщения с сервера, что всё принято нормально.

8. Сервисный режим и дополнительные функции

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

Первая - перезагрузка сканера (SoftReset). Это замена кнопке Reset сзади сканера, т.к. не всегда при себе есть тонкий острый предмет, чтобы попасть в это маленькое отверстие.

Вторая комбинация - вход в сервисный режим. В сервисном режиме доступны такие действия:

  1. Заново получить настройки
    Это бывает необходимо, когда появляются новые кладовщики, новые места погрузки и т.п.
  2. Список документов
    Здесь можно увидеть список загруженных на сканер документов или удалить какой-либо документ (Внимание! Отсканированные штрихкоды пропадут!). Также можно посмотреть внутренне содержимое файла XML - как с форматированием, так и просто в виде текста.
  3. Посмотреть лог
    Сейчас идёт тестовое внедрение и логов очень много, протоколируется всё что только можно. Впоследствии количество логов будет уменьшено, но они всё равно будут.
  4. Очистить лог
    Поскольку логов много, они очень быстро разрастаются. При достижении Config.maxLogSize текущий лог автоматически копируется в log_old.txt, после чего очищается. Однако, иногда нужно начать новый лог не дожидаясь, пока он достигнет максимального размера.
  5. Получить время
    Выполняется принудительная синхронизация времени с сервером. В основном применяется не для установки времени, а для проверки работоспособности промежуточного сервиса (пункт 2 из состава комплекса). Непосредственно для установки времени оно не надо, т.к. при загрузке документов сканер самостоятельно синхронизирует время с сервером.
  6. Тест связи с 1С
    Если промежуточный сервис работает, а документы не получаются или не передаются, то в этом пункте можно протестировать, отвечает-ли на запросы 1С.

В сервисном режиме даже без вызова каких-либо команд можно понять, работает-ли сеть и доступны-ли серверы - в окне ниже кнопок выводятся результаты соответствующих тестов.

Разумеется, сервисный режим предназначен не для простых пользователей, а для программистов/сисадминов.

Cервисный режим Список файлов документов

9. Прочие замечания

  1. Используемый терминал сбора данных - Casio IT-800R-15 с модулем лазерного считывания штрихкодов, работает под управлением Windows Mobile 6

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

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

  4. Промежуточный сервис сделан на основе REST API, что позволяет производить обмен данными с сервером любой программе, умеющей посылать/принимать данные по HTTP в виде XML.

About

Программа сканирования штрихкодов для терминала сбора данных Casio IT-800R-15

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages