2541
правка
Изменения
Перейти к навигации
Перейти к поиску
Нет описания правки
__TOC__
= Загрузка данных на весы =
Для загрузки данных на весы необходимо выполнить следующие шаги:
#Установить общие настройки: каталог импорта (каталог находится на компьютере, где запущен загрузчик), передачу шрифтов/этикеток, логирование и другие параметры;
#Создать правила импорта файлов с данными в настройках;
#Записать шаблоны этикеток в каталог загрузчика (по умолчанию: {{Путь к файлу|./Data/Labels/}}) и создать записи связывающие номера шаблонов этикеток с конкретными файлами. Данный пункт не является обязательным;
#Создать записи о весах в настройках;
#Записать файл с импортируемыми данными в каталог импорта. Файл можно записать в каталог импорта непосредственно на компьютер, где установлен загрузчик, либо передать с помощью WEB-консоли. Возможен импорт на одиночные весы или на все весы из списка весов, все определяется правилами и зависит от имени файла.
'''Далее весы импортируют переданные им данные.'''
По умолчанию весы LS515 импортируют данные только в период неактивности (по умолчанию 20 секунд после последней активности на весах).
Весы LS215 импортируют данные в фоновом режиме. Во время импорта на экране появляется сообщение: {{Пункт меню|Загрузка}}.
= Настройка загрузчика =
{{К сведению|Для изменения настроек загрузчика можно рекомендуется использовать разработанную для этого WEB-консоль '''R1ScaleLoaderControl''', либо .}} При необходимости для изменения настроек можно напрямую изменять файл настроек загрузчика {{Путь к файлу|Settings.ini}}.
Файл настроек находится в каталоге {{Путь к файлу|Settings}} каталога программы. Файл настроек является общим для WEB-консоли и загрузчика.
При изменении файла настроек они применяются загрузчиком автоматически.
! Название настройки !! Тип значения !! Значение по умолчанию !! Описание
|-
| UserName || string || root || Имя пользователя используемое для подключения в весам LS515по протоколу SSH
|-
| Password || string || 3342222 || Пароль используемый для подключения в весам LS515по протоколу SSH
|-
| PasswordAlt || string || teraoka || Альтернативный пароль используемый для подключения в весам LS515по протоколу SSH, если не подошел основной пароль. Данная ситуация может возникнуть, если включить поддержку протокола Digi на стороне весов. При это весы автоматически меняют пароль пользователя ''root''
|-
| MainDataPath || string || ./Data || Путь к данным ПО. В данном каталоге хранятся данные, используемые при работе загрузчика: картинки, этикетки, шрифты и т.д.
|}
| SaveLogDays || int || 7 || Количество дней, которое сохраняются логи
|-
| MaxLogSize || int || 5000000 || Максимальный размер файла лога до создания нового файла|выполнения ротации лог-| EnableDigiLogFile || bool || True || Разрешить ведение логов файлов. Размер в формате QLoadбайтах
|-
| LogLevel || string || INFO || Уровень логирования. Возможные варианты: DEBUG, INFO, WARNING, ERROR, CRITICAL
|-
| LogPath || string || ./Log/ || Путь сохранения файлов логов
|-
| EnableDigiLogFile || bool || True || Разрешить ведение логов в формате QLoad
|-
| DigiLogPath || string || ./Log/ || Путь сохранения файлов логов в формате QLoad
| ImportPath || string || ./Import || Каталог импорта файлов
|-
| ImportImagesPath || string || ./Import/Images || Каталог импорта файлов картинок. Если у товаров и/или групп заданы картинки, то они ищутся в данном каталоге и в случае обнаружения, передаются на весы в каталог {{Путь к файлу|/opt/R1Sensor/Data/Images}}
|-
| Encoding || string || utf-8 || Кодировка файлов импорта. Возможные варианты: 'windows-1251', 'dos-866', 'utf-8', 'windows-1256'
|-
| RemoteFilesOnStart || bool || True || Удалять файлы совпадающие с правиламиимпорта, находящиеся в каталоги каталоге импорта при запуске ПОзагрузчика. Данная опция возможно понадобится при отладке работы загрузчика
|-
| Update || bool || False || По умолчанию обновлять базу товаров, иначе замещатьвыполнять сначала полную очистку базы, а потом загрузку новых данных
|-
| SyncTime || bool || True || Синхронизировать время ''компьютер <-> весы'' при загрузке данных в весы
|-
| LoadLabelsOnLoadDataBase || bool || True || Загружать шаблоны этикеток при загрузке данных в весы
|-
| LoadFontssOnLoadDataBase || bool || True || Загружать шрифты при загрузке данных в весы. Данная опция работает только с весами LS215
|-
| DateTimeFormat || string || %Y%m%d%H%M || Формат даты времени в файлах импорта
| IP || string || || IP-адрес весов
|-
| Labels || string || || Шаблоны этикеток используемые весами. Задаются номера шаблон этикеток (один или более)
|-
| Comment || string || || Примечание
{{К сведению|Весы Digi на 17.03.2023 не поддерживаются}}
== Список шаблонов этикеток ==
Настройки находятся к группе {{Пункт меню|LabelX}}
Где Х - это порядковый номер шаблона этикеткив.
{| class="wikitable"
|-
! Название настройки !! Тип значения !! Значение по умолчанию !! Описание
|-
| Enabled || bool || True || Разрешить использование данных весов
|-
| Number || int || || Номер шаблона этикетки в весах
|-
| FormatFile || string || || Файл содержащий формат этикетки
|-
| MapFile || string || || Файл содержащий задний фон этикетки (статические объекты)
|-
| TblFile || string || || Файл содержащий исходный (редактируемый) шаблон этикетки. Данный файл может отсутствовать
|-
| Comment || string || || Примечание
|}
== Список правил импорта ==
::поддерживаются формат {{Путь к файлу|csv}}
::перед передачей данные файлы преобразуются в зависимости от типа весов, на которые ведется передача
=== Создание регулярного выражения для правил ===
Правило захвата файлов загрузчиком построено на регулярных выражений в формате Python. В правилах используются именованные группы, именно они должны быть описаны в формате Python. В остальном регулярные выражения стандартны.
Использование именованных групп:
:Для задания IP адреса весов - '''<IP>'''
:Для задания № этикетки - '''<NUM>'''
Для проверки правил можно использовать бесплатный онлайн сервис [https://regex101.com/ '''regular expressions 101'''] или аналогичные.
'''Пример для задания этикеток с привязкой к номерам:'''
:{{Пункт меню|.*[tTlL](?P<NUM>\d+).*_fmt(?P<IP>(?:#)\d{1,3}|)\.lnx$}}
Этому примеру соответствует:
:{{Путь к файлу|L17_fmt.lnx}}
Где 17 - это номер этикетки.
Этикетка рассылается на все весы из списка весов.
:{{Путь к файлу|L17_fmt#158.lnx}}
Где 17 - это номер этикетки.
Файл передается на весы с адресом .158 в последней части IP адреса.
'''Пример правила простого копирования файла на весы:'''
:{{Пункт меню|.*(?P<IP>#\d{1,3}|)\.(?:xml|txt|csv)$}}
Этому примеру соответствует:
:{{Путь к файлу|input.xml}}
Файл рассылается на все весы из списка весов.
:{{Путь к файлу|input#158.xml}}
Файл передается на весы с адресом .158 в последней части IP адреса.
= Запуск загрузчика =
Для работы программы необходим '''Python версии 3.10''' и новее.
Так же необходимо установить используемые в программе библиотеки, указанные в файле {{Путь к файлу|requirements.txt}}.
Команда установки зависимостей:
{{Путь к файлу|pip install -r /opt/PyR1ScaleService/requirements.txt}}
== ОС Windows ==
Для запуска загрузчика используются файл {{Путь к файлу|run-loader.bat}}, находящийся в каталоге ПО.
Для запуска ПО вручную необходимо выполнить команду из каталога ПО: {{Путь к файлу|python R1ScaleLoaderMain.py}}
== ОС Linux ==
Каталог, где должно находится ПО по умолчанию: {{Путь к файлу|/opt/PyR1ScaleService}}
Для запуска загрузчика в качестве сервиса systemd необходимо установить службу {{Путь к файлу|r1scaleloader.service}} командой {{Путь к файлу|systemctl enable r1scaleloader.service}},.
В случае расположения ПО по другому пути, необходимо внести соответствующие изменения в файл {{Путь к файлу|r1scaleloader.service}}.
Для запуска ПО вручную необходимо выполнить командуиз каталога ПО: {{Путь к файлу|python3 R1ScaleLoaderMain.py}}