Процедура закрытия смены предназначена для фиксации результатов товарно-денежных операций, выполненных в течение смены. Количество закрытий смены в течение календарных суток не ограничено.
Процесс закрытия смены состоит из выполнения обязательных проверок и выполнения регламентной процедуры. Обязательные проверки предназначены для тестирования готовности кассы к закрытию смены. Регламентная процедура настраивается в соответствиями с процессами, которые реализованы в торговом предприятии.
Закрытие смены осуществляется несколькими способами:
- через главное меню кассовой программы,
- с помощью плагина "Операционный день",
- при старте программы, если процедура закрытия смены была прервана.
Для закрытия смены через главное меню необходимо на пункт меню назначить действие "Закрытие смены" с командой COMMAND_SHIFTCLOSE
и параметром macrocode
, содержащим значение кода макроса (см. ниже).
Процесс закрытия кассовой смены сопровождается выдачей на экран кассира сообщений о выполняемой операции.
При закрытии смены создается временный файл /linuxcash/cash/data/sclose.state
, в котором хранится информация по текущей смене. В случае аварийного завершения работы кассы во время закрытия смены и последующем повторном закрытии смены процесс начинается с той точки, на которой был прерван. При возникновении ошибки пользователю предлагается повторить процесс или пропустить ошибку и продолжить процедуру. Отменить операцию закрытия смены нельзя.
{ "macroid" : 1, "stateid" : 10, "statename" : "Выгрузка продаж", "workshiftid" : 47 }
При закрытии смены в БД Documents
в таблице Users
создается запись о пользователе, выполнившем операцию.
Проверки при закрытии смены
При подготовке кассовой смены к закрытию выполняются следующие проверки:
- Выполняется проверка на наличие открытой смены. Если смена открыта, то на экран кассира выводится запрос о подтверждении ее закрытия. Если смена не открыта, то выполняется контроль на разрешение закрытия нулевой смены (см. ниже).
- Проверяется наличие незакрытых чеков. Если программа обнаружит незавершенный чек, то на экран выводится соответствующее сообщение. Закрытие смены можно выполнить только после закрытия чека.
- Осуществляется поиск чеков с ошибками. При наличии чеков с ошибками на экран кассира выводится сообщение о возможном расхождении сумм программ и ФР. Закрытие смены можно продолжить или прервать процедуру.
- Сохранение счетчиков ФР в БД. При возникновении ошибки сохранения счетчиков программа уведомляет об этом соответствующей ошибкой. Закрыть смену без устранения ошибки невозможно. Необходимо проверить связь с ФР и повторить процедуру закрытия.
После всех проверок закрытие смены будет произведено в реестре, в файл /linuxcash/cash/data/sclose.state
будет записана информация:
{ "macroid" : 1, "user" : { "barcode" : "412000434507", "code" : "4", "inn" : "", "keyposition" : 0, "locked" : 0, "name" : "\u041c\u0430\u0441\u0442\u0435\u0440", "rank" : "" }, "workshiftid" : 1 }
Проверка счетчиков в смене и в ФР
В кассовом ПО Artix реализована возможность проверки счетчиков в смене и в ФР при закрытии смены. Для этого необходимо задать параметр checkShiftAndFrCountersOnCloseShift
в конфигурационном файле /linux/cash/conf/ncash.ini
в секции [Misc]
:
- при значении
true
будут запрошены программные счетчики в смене и в ФР. Если суммы по счетчикам не совпадут, то будет выведен диалог "Расхождение сумм программы и ККМ!\nПродолжить?". Пользователь может продолжить закрытие смены или отменить его, - при значении
false
проверка осуществлена не будет.
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
checkShiftAndFrCountersOnCloseShift | логический |
| Проверять счетчики в смене и ФР при закрытии смены | По умолчанию false |
[Misc] ... ; Проверять счетчики в смене и ФР при закрытии смены ; По умолчанию false ;checkShiftAndFrCountersOnCloseShift = false
Закрытие нулевых смен
Регламентом работы торгового предприятия может быть предусмотрен сбор информации со всех каcc магазина, независимо от того работали они в течение рабочего дня или нет. Возможность сбора данных с касс, на которых смены не были открыты, определяется функционалом закрытия нулевой смены. Нулевая смена представляет собой смену, в которой не было выполнено никаких кассовых операций. Закрытие нулевой смены осуществляется при помощи стандартной процедуры закрытия смены, дата и время открытия и закрытия смены при этом совпадают.
Разрешение на закрытие нулевых смен на кассе задается посредством параметра closeNotOpenedShift
в конфигурационном файле /linuxcash/cash/conf/ncash.ini
в секции [Misc]
.
- При значении параметра
true
программа по требованию закрыть нулевую смену выполняется процедура закрытия. - При значении параметра
false
закрытие нулевой смены запрещено. При попытке закрыть смену на экран кассира выводится предупреждение "Смена не открыта".
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
closeNotOpenedShift | логический |
| Позволять закрывать не открытую смену | По умолчанию false |
[Misc] ; ; Разное ... ; Позволять закрывать не открытую смену ; По умолчанию false ;closeNotOpenedShift = false
Регламентная процедура
Регламентные процедуры представляют собой перечень действий, выполняемых при закрытии смены. Список действий задается в утилите администрирования Yuki при помощи макросов. В кассовом ПО Artix имеется предустановленный макрос, включающий следующие действия:
Действие | Команда | Порядок |
---|---|---|
Сверка итогов по безналу | COMMAND_OPERATION | 10 |
Z отчет (ФР) | 20 | |
Z отчет | 30 | |
Выгрузка продаж в КС | 40 | |
Обслуживание системы | 50 | |
Обслуживание ФР |
| |
Перезапустить программу |
Макрос закрытия смены может содержать дополнительные операции, например:
- печать отчетов,
- обязательная инкассация денежных средств,
- сверка итогов,
- перенос остатков денежных средств на следующую смену,
- выполнение внешних процедур, связанных с закрытием смены,
- перезапуск программы, перезагрузку кассы или ее выключение.
Контроль наличности при закрытии смены
Перенос наличности на следующую смену
Наличные, имеющиеся на кассе в конце смены, могут быть изъяты в рамках инкассации или переведены во входящий остаток следующей смены. Перенос наличных в следующую смену определяется параметром depositOnNextShift
в конфигурационном файле /linuxcash/cash/conf/ncash.ini
в секции [Misc]
.
- При значении параметра
true
остаток наличных на конец смены будет перенесен в новую смену. - При значении параметра
false
выполняется инкассация наличных, хранящихся в кассе на конец смены.
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
depositOnNextShift | логический |
| Перенос остатка наличных денег на следующую смену при закрытии текущей | По умолчанию false |
[Misc] ... ; Перенос остатка наличных денег на следующую смену при закрытии текущей ; true - переносить деньги на следующую смену, false - нет ; По умолчанию false ;depositOnNextShift = false
Обязательная инкассация
Обязательная инкассация денежных средств задается посредством команды COMMAND_MONEYOUTALL
, которая добавляется первой в списке в макрос закрытия смены. Если в кассе на момент инкассации отсутствует наличность, то выем будет произведен, но чек напечатан не будет.
Кассовое ПО Artix позволяет указывать причину обязательного выема денежных средств (инкассации) из денежного ящика.
Для команды COMMAND_MONEYOUTALL
можно задать вывод определенных причин для инкассации из ДЯ c помощью параметра moneyOutAllReasons
. В качестве значения параметра moneyOutAllReasons
используется код причины выема. Если причин несколько, то значения указываются через запятую. Коды причин выема берутся из БД Dictionaries
таблицы Backreason
из записей, для которых doctype=2
. Если параметр moneyOutAllReasons
или его значение не указаны, не будет отображаться выбор причины выема.
depositOnNextShift
, определяющий перенос наличности в следующую смену.