Auto closing of shift in the FR service

Материал из Servio Doc
Перейти к: навигация, поиск

Автозакрытие смены в сервисе ФР

Цель автозакрытия - гарантированное закрытие кассовой смены в тех же календарных сутках, в которых было открытие, во избежание штрафов.

Параметры автозакрытия:

HMS. «Настройки/Оборудование/Кассы»:

  • параметр «Автообнуление баланса». Наличие остатка по кассе после Z-отчёта и служебного изъятия: не обнулять — в кассе остается «Сумма разменной монеты» (FractionalCoins); «Обнулять после закрытия смены» — баланс обнуляется.
Clipboard.png Доработка по автообнулению. баланса (служебному изъятию) реализована только для ФР Мария. Для остальных ФР всегда автоматически проставляется «Сумма в смене : 0».
  • сервис ФР. Строки конфигурационного файла ServiceSettings.xml:
<ShiftCloseTime>23:40</ShiftCloseTime> время автозакрытия смены;
<LastShiftClosingDate>28.11.2019 23:40:02</LastShiftClosingDate> дата последнего удачного смены. Записывается в файле конфигурации;
<WaitAfterClosingShift>30</WaitAfterClosingShift> интервал (мин.), в который ФР не будет выполнять после автозакрытия смены команды, кроме получения статуса;
<CashOutBeforeShiftClose>True</CashOutBeforeShiftClose> выполнять ли служебное изъятие средств перед автозакрытием. Пока реализовано для ФР Мария 301МТМ;
<CashOutType>3</CashOutType> тип служебного изъятия перед автозакрытием смены: 1 - вся сумма в смене, 2 - за исключением разменной монеты, 3- раздельно(сначала разменная монета, потом остальное);
<FractionalCoins>200,00</FractionalCoins> сумма разменной монеты - предустановленный остаток в кассе на начало смены;
<XReportBeforeShiftClose>True</XReportBeforeShiftClose> выполнять ли X-отчет перед автозакрытием смены;
<LastShiftClosedAutomatically>False</LastShiftClosedAutomatically> признак автоматического закрытия смены. Служба проставляет значения «True» или «False»;
<TrackBeforeAutoShiftClosing>15</TrackBeforeAutoShiftClosing> проверка перед запуском автозакрытия: выполнялось ли закрытие смены в заданном интервале времени (мин). Если выполнялась, автозакрытие не производится

Алгоритм закрытия:

Во время, заданное в ShiftCloseTime, запускается процедура закрытия смены в сервисе ФР.
Печатается X-отчёт, затем Z-отчёт.
Для ФР «Мария 301МТМ»: если в CashOutBeforeShiftClose установлено «True», выполняется служебное изъятие средств. Тип служебного изъятия определяется параметром CashOutType: 1 - вся сумма в смене, 2 - за исключением разменной монеты, 3- раздельно (сначала разменная монета, потом остальное).
Сумма разменной монеты (остаток после закрытия смены) устанавливается в параметре FractionalCoins. Для всех ФР, за исключением «Мария 301МТМ», устанавливается значение «0».
С начала автозакрытия в течение времени (в минутах), заданного в WaitAfterClosingShift, сервис ФР не отвечает ни на какие запросы. Это время требуется для выполнения служебных операций.
По окончании времени ShiftCloseTime + WaitAfterClosingShift можно начинать выполнение операций с ФР.
Операции закрытия смены фиксируются в log-файле службы ФР.

В запросе статуса ФР по команде DeviceInfo выводится информация по автозакрытию смены:

  • WaitAfterClosingShift — заблокирован ли ФР после автозакрытия смены;
  • LastAutoClosingShiftDate — дата последнего удачного автозакрытия смены;
  • NextAutoClosingShiftDate — дата следующего автозакрытия смены;
  • OpenSessionSumm — средства в ФР в текущей смене.

Особенности:

Если в настройке кассы в HMS («Настройки/Оборудование/Кассы») не установлен флаг «Раздельное закрытие смен», то выполнение Z-отчета по кассе закроет фискальную смену в HMS.
Если в момент начала автозакрытия нет открытых фискальных смен HMS (например, портье закрыл смену вручную), то первая из открывшихся смен закроется автоматически.

Clipboard.png К одной службе ФР (к одной кассе) может быть подключено несколько POS-систем, например: HMS и RestoranPOS-системы не имеют информации о работе службы ФР.