====== Печать с кассы остатка бонусов гостя ====== В большинстве заведений при «бонусной» механике бонусами можно оплачивать только часть заказа. В этом случае для гостя важна информация: сколько именно бонусов у него доступно, сколько именно из них он может списать в данном конкретном заказе, сколько останется к оплате. Вывести такую информацию можно в пречек или в отдельный документ, печатаемый по отдельной кнопке в заказе. Вывод информации в пречек может быть нецелесообразен в случае настроенных «чеков намерения» в варианте «одновременная печать чека и пречека», т. к. для оплаты бонусами потребуется делать корректировку распечатанного чека намерения. В этой статье описана настройка для печати отдельного документа с информацией об остатке бонусов по отдельной кнопке в окне редактирования заказа. В нашем примере бонусами можно оплатить 30% от суммы заказа. ===== Макет документа ===== **Настройки → Печать → Документы и макеты → Прочее → Пользовательский макет.** Создаём новый макет, называем его «Остаток бонусов / ProBonus». {{:external:pro_bonus:98_dop:pasted:20250602-100247.png}} Открываем редактор макета и загружаем [[https://drive.google.com/file/d/1R-qM3jJvCY4e3op_-pjt1i-njkrDi_py/view?usp=sharing|готовый макет]] по кнопке **Импорт**. {{:external:pro_bonus:98_dop:pasted:20250602-100556.png}} Внутри макета в ''memo34'' есть скрипт, в котором прописано, какую часть заказа можно оплачивать бонусами. В данном примере бонусами можно оплачивать 30% заказа, поэтому в формуле умножение на 0.30. При необходимости эту цифру можно изменить. {{:external:pro_bonus:98_dop:pasted:20250602-100810.png}} {{:external:pro_bonus:98_dop:pasted:20250602-100845.png}} ===== Схема печати ===== **Настройки → Печать → Схемы печати.** В используемую схему печати добавляем созданный ранее макет. Запоминаем код этого представления документа из схемы печати. {{:external:pro_bonus:98_dop:pasted:20250602-102333.png}} ===== Скрипт ===== **Сервис → Скрипты**, группа «Операции». Создаём внутри новый скрипт и называем его «Печать остатка бонусов / probonus». Пример текста скрипта: procedure ProcessOperation1638689(Parameter: integer); begin RK7.PerformRefObject(RK7.FindItemByCode(rkrefMaketSchemeDetails,31)); end; В данном примере 31 — это код представления документа из используемой схемы печати (не код макета). {{:external:pro_bonus:98_dop:pasted:20250602-102542.png}} {{:external:pro_bonus:98_dop:pasted:20250602-102558.png}} ===== Операция ===== **Сервис → Операции**, группа «Пользовательские операции». Выбираем любую неиспользуемую операцию, например 16. {{:external:pro_bonus:98_dop:pasted:20250602-102814.png}} Меняем название и связываем с созданным ранее скриптом. {{:external:pro_bonus:98_dop:pasted:20250602-102903.png}} ===== Функциональная клавиша ===== **Настройки → Графический интерфейс → Функциональные клавиши**, группа «Разные». Создаём новую функциональную клавишу и связываем её с созданной ранее операцией. {{:external:pro_bonus:98_dop:pasted:20250602-103458.png}} ===== Селектор ===== **Настройки → Графический интерфейс → Селекторы.** **Заказ → Селектор операций → Чек: Селектор операций.** Изменяем используемый селектор или, если используется предустановленный, делаем его копию и переназначаем использование. В нужную группу (например, «Доп») добавляем созданную ранее функциональную клавишу. {{:external:pro_bonus:98_dop:pasted:20250602-103836.png}} {{:external:pro_bonus:98_dop:pasted:20250602-103858.png}} ===== Касса ===== Проверяем, что в кассовом интерфейсе появилась кнопка. {{:external:pro_bonus:98_dop:pasted:20250602-104233.png}}