Загрузка справочников в БД кассы производится в несколько этапов:
- Передача справочников из АСТУ в исходную директорию на кассе.
- Перенесение справочников из исходной директории в рабочую директорию.
- Конвертирование справочников из исходного формата в AIF.
- Помещение объектов в очередь.
- Загрузка объектов из очереди в базу данных кассы.
Загрузка справочников в рабочую директорию кассы осуществляется посредством сервиса Exchanger
. Для выполнения загрузки справочников должен быть запущен сервис exchangers-upload
.
Включение сервиса обмена через файловую систему
Управление сервисом загрузки справочников осуществляется через параметр UPLOAD_START
в файле /etc/default/exchangers
.
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
UPLOAD_START | строковый |
| Включение сервиса загрузки справочников через файловую систему | Имя сервиса exchangers-upload . По умолчанию сервис включен. |
# Defaults for the "exchangers-unload" and "exchangers-upload" initscript ... # Set to yes to start exchangers-upload UPLOAD_START=yes
Настройка обмена через файловую систему
Настройка сервиса обмена через файловую систему осуществляется в конфигурационном файле /linuxcash/cash/exchangesystems/exchangers/config/cash/exchangers.ini
в секции [UPLOAD]
.
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
poolProcessSize | целочисленный | Целое положительное число | Количество процессов, осуществляющих обработку и загрузку справочников | |
timeoutFlagFind | целочисленный | Целое положительное число | Интервал сканирования данных в секундах, по истечении которого запускается процесс поиска файлов справочников и дальнейшая их загрузка | |
timeoutNodeReread | строковый | Целое положительное число | Интервал перечитывания нод в секундах. Нода представляет собой узел магазина и кассы. | |
maxCountBackupFiles | целочисленный | Целое положительное число | Максимальное количество архивов для одного магазина | При значении 0 настройка не учитывается. Устаревшие архивы удаляются. |
actualCountDaysForBackupFiles | целочисленный | Целое положительное число | Количество дней хранения архивов | |
converter | строковый |
| Конвертер для обработки справочников в указанном формате. Можно указать несколько конвертеров через запятую. | По умолчанию Параметры указанного конвертера определяются в секции |
backupDir | строковый | Директория резервного хранения архивов справочников | Полный путь до директории, в которую помещаются файлы справочников. | |
stopConvertIfBadDict | логический |
| Параметр, устанавливающий поведение загрузки справочника, у которого произошла ошибка при конвертировании.
|
При установке сервисов обмена установлено значение |
badDictsDirectory | строковый | Директория для сохранения справочников, при обработке которых произошли ошибки. | Справочники с ошибками перемещаются в указанную директорию при значении параметра В имени директории можно использовать макроподстановки. | |
pathUploadFinishFlag | строковый | Создавать флаг успешной загрузки | По умолчанию не создается. |
[UPLOAD] ; Количество процессов poolProcessSize = 1 ; Период сканирования данных. Задается в секундах timeoutFlagFind = 20 ; Период перечитывания нод. Задается в секундах. timeoutNodeReread = 300 ; Максимальное количество архивов для одного магазина в бэкап директории (устаревшие архивы будут удаляться) ; Если указать значение 0, то данная настройка учитываться не будет maxCountBackupFiles = 30 ; Количество дней актуальности архивов для одного магазина в бэкап директории (устаревшие архивы будут удаляться) ; Если указать значение 0, то данная настройка учитываться не будет actualCountDaysForBackupFiles = 30 ; список конвертеров данных разделенный запятыми (aif, oracle, shtrih, smag-ukm, smag-ukm4, users4, crystal) converter = aif ; директория, в которую будут складываться бэкапы справочников backupDir = /linuxcash/cash/data/backup/dicts ; Останавливать конвертирование для магазина, у которого произошла ошибка при конвертировании справочника. stopConvertIfBadDict = true ; Директория для сохранения справочников, при обработке которых произошли ошибки. badDictsDirectory = /opt/exchangers/badDicts ; Создавать флаг успешной загрузки ; По умолчанию не создается ;pathUploadFinishFlag = /tmp/upload%(year)s.%(month)s.%(day)s_%(hour)s-%(min)s-%(sec)s.flg
При включенной настройке pathUploadFinishFlag
после загрузки справочника в указанной директории создается файл-флаг, содержащий количество объектов, при загрузке которых произошла ошибка.
Если при обработке справочника произошла ошибка, то файл-флаг не будет создан.