Скрипты на операции
Одновременная печать пользовательского макета и сохранение заказа
Задача: Необходим скрипт, который одновременно печатает на кассе пользовательский макет и сохранять заказ. Скрипт использует функциональную клавишу, а та — пользовательский селектор.
Решение:
Полное удаление чека
Задача: Необходимо создать скрипт, который будет полностью удалять чек.
Решение:
Создание функциональной клавиши «удалить все элементы меню из заказа», в том числе тарификации, но не скидки
Задача: Необходимо создать скрипт для кнопки, которая будет удалять все содержимое, оставляя только свойства заказа и скидки\наценки\предоплаты. Для всех удаляемых элементов указывать только одну причину удаления.
Решение:
Создание акции «Блюдо в подарок» в будние дни при достижении суммы заказа в 1000 р
Задача: Необходимо, чтобы в будние дни при достижении суммы заказа в 1000 р и при нажатии кнопки «Сохранить заказ» высвечивалось предложение о добавление бесплатного пива (сорт №1).
Если же сумма заказа достигает 2000р — система предлагает другое пиво (сорт №2), либо два пива сорта №1.
Решение: Создайте скрипт для пользовательской операции, которую надо назначить на селектор вместо стандартного селектора сохранения заказа:
Создание акции «3 по цене 2-х»
Задача: создать акцию «3 по цене 2-х»
Решение: в менеджерской станции r_Keeper_7, в разделе «Скидки и наценки» создайте новую скидку и обязательно выберите:
- тип скидки — «сумма»,
- «изменяемое значение» — включено,
- «на блюдо» — включено,
- «многократно» — включено.

Назначьте данный скрипт на селектор:
Создание скидки 50% на каждое второе блюдо в заказе
Задача: необходим скрипт для создания 50%-ой скидки на каждое второе блюдо в заказе.
Решение: создайте новую скидку с настройками:
- мин. кличество — 2
- кол.режим — «Для всех»
- процент — 50

Назначьте данный скрипт на селектор:
Данный скрипт делает скидку 50% на все позиции после первой,
Если необходима скидка на каждое второе блюдо то модифицируйте строки:
Создание скидки 100% на второе блюдо в заказе определенной категории
Задача: создать 100%-ую скидку на второе блюдо определенной категории
Решение:
Создание скидки 100% на первое блюдо из категории
Задача: Создать акцию по флайеру — 1 десерт в подарок. Сумма чека от 500 рублей. Скидка 100% только на одно блюдо из категории «десерты». Цены разные, в чеке может быть несколько десертов. Скидку необходимо дать только один раз на десерт, который попал в заказ первым.
Решение:
скрипт для ручного добавления акции
Два скрипта для формы редактирования чека, которые автоматически добавляют/удаляют скидку:
Создание акции «Детский день рождения. Скидка 10% + Пицца в подарок»
Задача: необходимо настроить акцию «Детский день рождение. Скидка 10% + Пицца в подарок».
Для этого нужно настроить 100%-ую скидку на категорию «пицца», в которой находятся два вида Пицца Домашняя и Пицца Детская. Если в заказе стоят две пиццы из категории "пицца", то 100% скидка действует только на одну пиццу, а на вторую 10%.
Решение: Создайте крипт для селектора «Акция»:
Скрипт для применения скидки 10% автоматически при наличии в заказе у блюда категории скидки 100% :
Результат на кассе:

Создание счастливого чека
Задача: Создать скрипт для «счастливого чека» с ограничением
1) по минимальной сумме чека;
2) по общему возможному количеству чеков. Количество чеков зависимости от суммы выручки на данный момент, т.е. если выручка, например, 50 тысяч, то счастливых чеков может быть максимум 5 шт.
Решение:
1) Создайте макет печати в пользовательских отчётах, также, для макета надо создать представление печати.

2) В кассовой форме необходимо добавить компонент TReportPanel:

3) В свойстве «Поведение -- Document» указать ранее созданный макет печати.
4) Вписать скрипт:
Добавление блюда в заказ в момент перехода в режим расчета
Задача: Создать скрипт, добвляющий блюдо в заказ в момент перехода в режим расчета. процесс должен выглядеть так: в режиме быстрого чека при нажатии на кнопку «Расчет заказа» система проверят сумму заказа. Если сумма заказа больше или равно определенной сумме, то система показывает сообщение с кнопками «Да» и «Нет».
При нажатии на «Да», система добавляет блюдо с кодом NNN в заказ и переходит в режим расчета.
При нажатии на «Нет» система сразу переходит в режим расчета
Решение: В быстрый чек добавить пользовательский селектор «Оплата» вместо стандартного. К этому селектору привязать пользовательскую операцию со скриптом:
В данном скрипте заменить сумму «300» на требуемую, а также сменить код добавляемого блюда «39» на актуальное значение.
Блокировка блюд
Задача: Необходимо заменить стандартный селектор «Блюда», чтобы при вводе кода блюда и нажатии этого селектора, блокировались некоторые блюда.
Решение:
Статусы
Как получить родителя комбо-элемента в скрипте
Взять у блюда свойство ComboDishUNI, найти блюдо с таким UNI.
В R_Keeper 7.5.5.035 можно сделать так:
В более старых версиях нет функции FindByUNI и для поиска блюда с нужным UNI нужно выполнять перебор по всем блюдам заказа
Добавление модификатора всем блюдам в заказе
Задача: Написать скрипт для селектора, добавляющий модификатор всем блюдам в заказе.
Решение:
Назначьте селекторам пользовательскую операцию с вышеуказанным скриптом и обязательно задайте в свойстве «Параметр для Пусто» и «Параметр» код соответствующего модификатора.
Добавление новой позиции блюда в заказ при нажатии на строку сохраненого блюда и кнопку количество
Задача: При выделении позиции сохраненного блюда и нажатии на кнопку «количество» необходимо добавлять дополнительную позицию внизу заказа. (Функция работала в R-keeper_6). Сейчас при нажатии на позицию с сохраненным блюдом кнопка «количество» неактивна.
Решение:
- Добавить скрипт в скрипты-операции.
- Закрепить скрипт за конкретной пользовательской операцией.
- Операцию закрепить за функциональной клавишей, а клавишу назначить новому селектору.
Скрипт:
Добавление кнопки «Количество» с функцией «Плюс порция сохраненного блюда»
Задача: объединить функции клавиши «Количество» и «Плюс порция сохраненного блюда» (дозаказ))?
Решение:
Быстрая оплата рублями в R_Keeper_7
Задача: при нажатии в режиме быстрого чека на клавиши «Оплатить рубли» или «Оплатить» открывалось сразу окно оплаты наличными, минуя экран выбора типа оплаты.
Решение:
Определение остатка предоплаты по визиту
Задача: Ресторан работает в режиме «карта на входе» через msr-алгоритм. Необходим скрипт, который бы выводил остаток суммы предоплаты по визиту.
Решение:
Ограничение скидки на категорию 100%
Задача: Скидка 100% должна примениться к блюдам, попадающим в категорию, только в количестве 1 позиции.
Решение:
Открытие окна браузера для показа операционных отчетов касс
Задача: необходимо создать функциональную клавишу в главном меню кассы, при нажатии на которую будет выполняться команда — fsWeb.exe "https://172.22.4.57:8088/csthtm/overall1.html", где 172.22.4.57 значение расширенного свойства ресторана
Решение:
Скрипт закрепить за пользовательской операцией, которую в, свою очередь, назначить на функциональную клавишу.
Добавление блюда в заказ
Задача: После прокатывания дисконтной картой, на карту клиента должна возвращаться скидка и подарок — блюдо с определенным кодом.
Процесс должен выглядеть так:
1. Создание кнопки в интерфейсе
2. При нажатии на эту кнопку клиент вводит промокод
3. Этот промокод воспринимается как код карты, на него написан соответствующий MCR-алгоритм.
4. Происходит вызов FarCards, получение скидки и кода подарочного блюда. Его можно вернуть в каком-нибудь поле.
5. Это блюдо добавляется в стол и на стол ставится скидка.
Решение:
1) создать скрипт
2) В поле ввода кассового терминала вводится промокод (1001 или 1002 в примере). При совпадении введённого промокода с сохранённым в скрипте вызывается MCR-скрипт.
MCR-скрипт нужно создать с такими настройками:
- Основное-Область: Скидка
- Основное-Объект: Скидка использована
Основное-Типы устройств-Скрипт: поставить галочку
DELPHI
Проверка количества блюд из определенной категории
Задача: Необходим скрипт для проверки количества блюд из определенной категории.
Решение:
Создание дополнительных отчетов при закрытии смены
Задача: создание скрипта для автоматического создания дополнительных отчетов при закрытии смены.
Решение:
Запрет на отмену пречека в одном заказе более, чем Х раз
Задача: Необходимо запретить отмену пречека в одном заказе более чем Х раз (указывать в параметре)
-1 (по умолчанию) — разрешено отменять бесчисленно
0 — запрещено вообще отменять пречек
1...999 — столько раз можно отменить пречек в заказе/визите
Order >> print pre-check >> cancel pre-check >> print pre-check again >> can not cancel pre-check (system warning and must not allow).
Суперпользователь может отменять чеки всегда, не обращая внимания на данный параметр.
Решение:
- Создать расширенное свойство MaxDelBillCnt типа integer и назначить ресторану.
- В свойствах ресторана задать значение этому свойству.
- Создать скрипт:
Пользовательской операции 15 назначить пустой скрипт:
Этой операции включить контроль доступа. Дать право на неё «суперпользователю».
Использование разных типов цен
Задача: необходимо, чтобы при продаже блюд через кассу обычному клиенту (не авторизованному на кассе с помощью карты), цена была «Тип Цен №1», а при продаже блюд клиенту ресторана (авторизованному картой на кассе) — цена была «Тип Цен №2»
Решение:
Изменение основного официанта
Задача: создать скрипт для изменения основного официанта.
Решение:
Смена типа цены через задание порядка подачи блюдам
Задача: Необходим скрипт, который для блюд определенной категории задает порядок подачи №1, а для всех остальных — порядок подачи №2.
Решение:
Изменение суммовой скидки
Задача: Скидка привязана к карте и работает для заказов с доставкой. Необходимо, чтобы каждый десятый заказ получал скидку 500 рублей, при условии если средний чек по этим 10 заказам был не меньше 500 р.
Решение:
Изменение размера комбо или блюда по нажатию кнопки
Задача: Необходимо написать скрипт и сделать кнопки, при нажатии на которые будет автоматически меняется размер блюда.
Решение:
скрипт для увеличения размера
Скрипт для уменьшения размера
- Одновременная печать пользовательского макета и сохранение заказа
- Полное удаление чека
- Создание функциональной клавиши «удалить все элементы меню из заказа», в том числе тарификации, но не скидки
- Создание акции «Блюдо в подарок» в будние дни при достижении суммы заказа в 1000 р
- Создание акции «3 по цене 2-х»
- Создание скидки 50% на каждое второе блюдо в заказе
- Создание скидки 100% на второе блюдо в заказе определенной категории
- Создание скидки 100% на первое блюдо из категории
- Создание акции «Детский день рождения. Скидка 10% + Пицца в подарок»
- Создание счастливого чека
- Добавление блюда в заказ в момент перехода в режим расчета
- Блокировка блюд
- Добавление модификатора всем блюдам в заказе
- Добавление новой позиции блюда в заказ при нажатии на строку сохраненого блюда и кнопку количество
- Добавление кнопки «Количество» с функцией «Плюс порция сохраненного блюда»
- Быстрая оплата рублями в R_Keeper_7
- Определение остатка предоплаты по визиту
- Ограничение скидки на категорию 100%
- Открытие окна браузера для показа операционных отчетов касс
- Добавление блюда в заказ
- Проверка количества блюд из определенной категории
- Создание дополнительных отчетов при закрытии смены
- Запрет на отмену пречека в одном заказе более, чем Х раз
- Использование разных типов цен
- Изменение основного официанта
- Смена типа цены через задание порядка подачи блюдам
- Изменение суммовой скидки
- Изменение размера комбо или блюда по нажатию кнопки