Начиная с версии #108 для выгрузки продаж с КС в АСТУ добавлена возможность работы в многопоточном режиме.

Выгрузка продаж

Управление выгрузкой продаж осуществляется с помощью сервиса exchangers-unload в каталоге /etc/default/. Сервис устанавливается и запускается автоматически вместе с кассовым сервером.

При установке сервиса в директорию /opt/exchangers/scripts/cs добавляется скрипт getUnloadQueue.sh, который предназначен для просмотра состояния очереди в данный момент времени. После запуска скрипта в терминале отобразится таблица со списком очереди по кассам или магазинам.

Пример списка очереди

Параметры выгрузки продаж определяются настройками конфигурационного файла /opt/exchangers/config/cs/exchangers.ini в секции [Unload].

НаименованиеТип данныхВозможные значенияОписаниеПримечания

nodeGetter

строковый
  • cs20
  • cs22
  • cs23
  • cs30

Модуль для получения нод

Ноды представляют собой совокупность узлов дерева магазинов и групп:
  • значение cs20 используется с версией КС CashServer2.0,
  • значение cs22 совместимо с КС CashServer2.0 сборки 383 и выше,
  • значение cs23 используется с версией КС CashServer2.3,
  • значение cs30 совместимо с КС CashServer3.0.

unloadSalesInterval

целочисленныйцелое положительное числоИнтервал проверки запросов выгрузки продаж, в секундах

unloadCurrentSalesInterval

целочисленныйцелое положительное числоИнтервал выгрузки текущих продаж, в секундах

maxCountBackupFiles

целочисленныйцелое положительное числоМаксимальное количество архивов одной кассы в директории резервного копированияУстаревшие архивы удаляются. При значении 0 настройка не учитывается

actualCountDaysForBackupFiles

целочисленныйцелое положительное числоМаксимальное количество дней актуальности архивов в директории резервного копированияУстаревшие архивы удаляются. При значении 0 настройка не учитывается

dbConnection

строковый
Строка для подключения к БД для получения продажmysql://netroot:netroot@localhost/%(CLUSTER)sdocuments%(DB_SUFFIX)s
closedShiftsByFileFlagцелочисленный
  • 0 – закрытые
  • 1 – открытые
  • 2 – открытые и закрытые
Выгрузка смен по файлу-флагуПо умолчанию 2
multiprocessingлогический
  • true
  • false
Выгрузка продаж в многопоточном режиме

По умолчанию false.

При значении true на каждую кассу будет создан свой процесс

processCount

целочисленный

целое положительное число

Максимальное кол-во процессов при многопоточной выгрузкеПо умолчанию 10

unloadNotUnloadedSalesInterval

целочисленный

целое положительное число

Интервал выгрузки невыгруженных продаж (в секундах)

По умолчанию 0.

Если указать значение 0, то продажи выгружаться не будут

Пример настройки
[UNLOAD]
; Модуль для получения нод
nodeGetter = cs30

; Интервал проверки запросов выгрузки продаж (в секундах)
unloadSalesInterval = 10

; Интервал выгрузки текущих продаж (в секундах).
; Если указать значение 0, то текущие продажи выгружаться не будут
unloadCurrentSalesInterval = 0

; Максимальное количество архивов для одной кассы в бэкап директории (устаревшие архивы будут удаляться).
; Если указать значение 0, то данная настройка учитываться не будет
maxCountBackupFiles = 30

; Количество дней актуальности архивов для одной кассы в бэкап директории (устаревшие архивы будут удаляться).
; Если указать значение 0, то данная настройка учитываться не будет
actualCountDaysForBackupFiles = 30

; Строка подключения к БД для получения продаж
dbConnection = mysql://netroot:netroot@localhost/%(CLUSTER)sdocuments%(DB_SUFFIX)s

; Выгрузка смен по файлу-флагу (по умолчанию 2)
; 0 – закрытые
; 1 – открытые
; 2 – открытые и закрытые
closedShiftsByFileFlag = 2

; Выгрузка продаж в многопоточном режиме (по умолчанию False)
multiprocessing = False

; Максимальное кол-во процессов при многопоточной выгрузке (по умолчанию 10)
processCount = 10

;Интервал выгрузки невыгруженных продаж (в секундах)
;Если указать значение 0, то продажи выгружаться не будут
unloadNotUnloadedSalesInterval = 0

Выгрузка текущих продаж

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

Повторную выгрузку продаж из кассового сервера в АСТУ можно осуществить через веб-интерфейс кассового сервера в разделе "Сверка продаж". Подробнее о выгрузке продаж можно прочитать в документации "Назначение вкладок для объектов торговой сети".

Выгрузка невыгруженных продаж

Начиная с версии #125 по умолчанию закрытые смены с невыгруженными продажами выгружаться не будут. После обновления:

  • файл для почасовой выгрузки невыгруженных продаж /etc/cron.hourly/exchangers-unload удаляется,
  • в конфигурационном файле /opt/exchangers/config/cs/exchangers.ini в секции [Unload] добавляется параметр unloadNotUnloadedSalesInterval = 0 (значение по умолчанию).
    С помощью параметра unloadNotUnloadedSalesInterval можно задать интервал выгрузки невыгруженных продаж.
  • No labels