Auto closing of shift in the FR service
Материал из Servio Doc
Версия от 16:47, 29 ноября 2019; Илья Умедман (обсуждение | вклад)
Автозакрытие смены в сервисе ФР
Цель автозакрытия - гарантированное закрытие кассовой смены в тех же сутках, что и было открытие, во избежание штрафов.Параметры автозакрытия:- HMS. "Настройки/Оборудование/Кассы": - параметр "Автообнуление баланса". Наличие остатка по кассе после Z-отчёта и служебного изъятия: не обнулять - в кассе остается "Сумма рзменной монеты" (FractionalCoins); "Обнулять после закрытия смены" - баланс обнуляется.Примечание: Доработка по автообнулению. баланса (служебному изъятию) реализована только для ФР Мария. Для остальных ФР всегда автоматически проставляется "Сумма в смене : 0"- Сервис ФР. ServiceSettings.xml: <ShiftCloseTime>23:40</ShiftCloseTime> - время автозакрытия смены <LastShiftClosingDate>28.11.2019 23:40:02</LastShiftClosingDate>- дата последнего удачного автозакрытия смены. Записывается в config <WaitAfterClosingShift>30</WaitAfterClosingShift> - интервал (мин.), в который ФР не будет выполнять после автозакрытия смены команды, кроме получения статуса. <CashOutBeforeShiftClose>True</CashOutBeforeShiftClose> - выполнять ли служебное изъятие средств перед автозакрытием. Пока реализовано для ФР Мария 301МТМ. <CashOutType>3</CashOutType> - тип служебного изъятия перед автозакрытием смены: 1 - вся сумма в смене, 2 - за исключением разменной монеты, 3- раздельно(сначала разменная монета, потом остальное) <FractionalCoins>200,00</FractionalCoins> - сумма разменной монеты - предустановленный остаток в кассе на начало смены <XReportBeforeShiftClose>True</XReportBeforeShiftClose> - выполнять ли X-отчет перед автозакрытием смены.Алгоритм закрытия:Во время, заданное в <ShiftCloseTime>, запускается процедура закрытия смены в сервисе ФР. Печатается X-отчёт, затем Z-отчёт.Для ФР "Мария 301МТМ": если в <CashOutBeforeShiftClose> установлено "True", выполняется служебное изъятие средств. Тип cмлужебного изъятия определяется параметром <CashOutType>: 1 - вся сумма в смене, 2 - за исключением разменной монеты, 3- раздельно(сначала разменная монета, потом остальное).Сумма разменной монеты (остаток после закрытия смены) устанавливается в параметре <FractionalCoins>. Для всех ФР, за исключением "Мария 301МТМ", устанавливается 0.С начала автозакрытия в течение времени (в минутах), заданного в <WaitAfterClosingShift>, сервис ФР не отвечает ни на какие запросы. Это время требуется для выполнения служебных операций.По окончании времени <ShiftCloseTime>+<WaitAfterClosingShift> можно начианть выполнение операций с ФР.Операции закрытия смены фиксируются в log-файле службы ФР.в запросе статуса ФР по команде DeviceInfo выводится информация по автозакрытию сменны: WaitAfterClosingShift - заблокирован ли ФР после автозакрытия смены LastAutoClosingShiftDate - дата последнего удачного автозакрытия смены NextAutoClosingShiftDate - дата следующего автозакрытия смены OpenSessionSumm - средства в ФР в текущей сменеОсобенности:Если в настройке кассы в HMS ("Настройки/Оборудование/Кассы") не установлен флаг "Раздельное закрытие смен", то выполнение Z-отчета по кассе закроет фискальную смену в HMS. Если в момент начала автозакрытия нет открытых фискальных смен HMS (например, портье закрыл смену вручную), то первая из открывшихся смен закроется автоматически.ПримечаниеК одной службе ФР (к одной кассе) может быть подключено несколько POS-систем, например: HMS и RestoranPOS-системы не имеют информации о работе службы ФР Функционал альтернативной тарификации предназначен для взаимодействия HMS Servio с ОТА-каналами и Channel Manager, так как последние предъявляют ряд жёстких специфических требований, которые значительно сужают возможности и настройки текущей тарификации.Внешние системы не полностью поддерживают функционал HMS, например, не работают со свободно конфигурируемыми пакетными услугами. Поэтому для настройки взаимодействия с ними разработан специальный функционал.В основу концепции альтернативной тарификации заложен следующий механизм: для каждого отеля и каждого типа размещения в его номерах создаются группы цен на услуги проживания и питания, охватывающие все специфические периоды времени бронирования: высокий сезон, низкий сезон, праздники и пр. Затем подготовленные группы цен вкладываются в прейскуранты, а в календаре для каждого прейскуранта задаются периоды его применения.Таким образом, тарифицирование проживания получается несложным для настройки и управления.====Последовательность ввода информации====Функционал «Альтернативная тарификация» расположен в модуле «Продажи» и размещён на трёх вкладках: «Прейскуранты», «Группы цен» и «Календарь».Первым и самым трудоёмким этапом является создание и настройка групп цен на услуги. После этого выполняется работа с прейскурантами и календарём прейскурантов.====Группы цен====Для каждого отеля создаётся карта вариантов размещения: список категорий номеров и возможные способы заселения в них. Полученная таблица загружается программным способом — скриптом, и редактированию не подлежит.При добавлении новой группы цен заполняются все поля, в том числе:* выбирается валюта группы цен. В прейскурантах (вкладка «Прейскуранты») также устанавливается валюта, соответственно к прейскуранту можно будет прикрепить только группу цен с той же валютой;* категория группы цен. В настоящей версии услуга для каждого отеля задана жёстко — «Проживание». При необходимости услуга может быть изменена;* даты начала и окончания устанавливают период действия группы цен. В календаре на конкретные даты для выбора будут доступны только те прейскуранты, группы цен в которых включают эти даты.Далее настраивается таблица «Цены на услуги»: задаются передаваемые во внешние системы услуги, правила их начисления и цены.В каждой категории номера флагами отмечаются передаваемые варианты размещения, после чего становится доступным их настройка. Для каждого варианта размещения устанавливается:* правило начисления:** «За номер в сутки» — стоимость номера не дифференцируется в зависимости от количества проживающих в нём гостей. Например, если стоимость суток проживания в номере Double составляет 1000, то независимо от того, проживает в нём 1 гость или 2 гостя будет сформировано начисление «Проживание» в количестве «1» с ценой и суммой 1000;** «За гостя в сутки» — стоимость номера различается в зависимости от количества проживающих в нём гостей. Например, стоимость суток проживания в номере Double для одного гостя составляет 600. Если проживает 1 гость, то будет сформировано начисление «Проживание» в количестве «1» с ценой и суммой 600. Если проживают 2 гостя, то будет сформировано начисление «Проживание» в количестве «2» с ценой 600 на сумму 1200;** «За пользование» — правило используется для передачи стоимости неосновных, разовых услуг.* цена — задаётся в соответствии с правилом начисления.====Прейскуранты====Список прейскурантов также создаётся отдельно для каждого отеля: заводятся прейскуранты, в них добавляются группы цен, которые будут устанавливаться в календаре на диапазоны дат или отдельные даты.Прейскуранты могут быть созданы «с нуля» или быть унаследованы от ранее введённых прейскурантов.В любом случае, после сохранения заголовка прейскуранта валюта и тип питания корректировке не подлежит.====Добавление без наследования====Добавление прейскуранта производится в два этапа: сначала вводится заголовок прейскуранта, включающий валюту и тип питания (выбирается из справочника «Настройка/Справочники/Типы питания»), включённый в прейскурант. Затем, после добавления заголовка, в прейскурант добавляются группы цен на услуги проживания.В прейскуранте можно ввести скидку на услуги. Если поменять размер скидки у имеющегося прейскуранта, то она будет применяться только для новых бронирований (или после пересчёта цен и начислений в бонированиях, добавленных ранее).Скидка, заложенная в прейскуранте, применяется на все группы цен.Группа цен может быть удалена из прейскуранта, если она не используется в календаре. В противном случае кнопка удаления в строке с группой цен отсутствует.====Добавление с наследованием прейскуранта====Очень часто прейскуранты отличаются друг от друга только размером скидки. В этом случае для создания прейскуранта используется механизм наследования от основного прейскуранта.![]() |
Каскадное наследование прейскурантов невозможно. Дочерние прейскуранты можно наследовать только от основных. |

![]() |
Назначить цены можно только на период, начиная с текущей даты. Поэтому, независимо от выделяемой курсором области, для назначения цен подсветятся только возможные даты. |
