PDA

Просмотр полной версии : Скрипт на автосброс редактирования в быстром чеке



pixnet
12.07.2020, 13:21
Появилась потребность настроить автовыход из быстрого чека при бездействии ( НЕ сброс регистрации, а выход в главное меню со сбросом заказа). Например, в режиме быстрого чека формируем заказ, до оплаты дело не дошло и он висит, на VDU в том числе, пока назад ручками не выйдешь. Возможно ли написать для такой задачи скрипт, чтоб при бездействии (или по таймеру после открытия формы) в быстром чеке он сбрасывал заказ выходя обратно в главное меню? В программировании не силен, буду рад любой помощи :)

sibgaba
13.07.2020, 07:38
А выход в ГМ зачем?
Если я верно понял то вам будет достаточно очистить заказ просто...

Таймер на форму на срабатывания таймера скрипт который чистит список блюд (я так понимаю что молча чистит)

pixnet
13.07.2020, 11:25
Да, очистки заказа будет достаточно, такое решение подойдет.

pixnet
13.07.2020, 12:19
Вобщем в форму быстрого чека добавил тамер и код:

begin
RK7.PerformOperation(rkoDeleteLine, 1);
end

Работает, но все равно как то не комильфо, удаление то происходит, но стикер на VDU так и висит, плюс я так понимаю таймер по кругу работает и в определенные моменты это может стать проблемой. Если на кассе ручками просто выходишь в ГМ, то все отлично исчезает. Может есть какая команда для скрипта в заместо удаления прописать?

sibgaba
13.07.2020, 13:54
1. если вы дадите скриптом команду на выход в ГМ то все равно выйдет окошко "Очистить заказ Да/Нет" и будет ждать нажатия кнопки, т.е. не ваш вариант.
2. При любой активности в окне таймер конечно же обнулять надо

pixnet
13.07.2020, 14:00
2. При любой активности в окне таймер конечно же обнулять надо

Есть способ как это организовать?

pixnet
13.07.2020, 18:42
1. если вы дадите скриптом команду на выход в ГМ то все равно выйдет окошко "Очистить заказ Да/Нет" и будет ждать нажатия кнопки, т.е. не ваш вариант.

Заметил, что если заказ пуст, то возврат в ГМ происходит без подтверждения, сразу. Стало быть решение уже близко, осталось узнать команду, которая дает задний ход, вставить в скрипт после RK7.PerformOperation(rkoDeleteLine, 1); помогайте братцы))

pixnet
13.07.2020, 19:05
Уфф, разобрался кое как, вот та самая команда, которой так не хватало RK7.PerformOperation(rkoCancelOrder, 1);

pixnet
13.07.2020, 19:23
Осталось разобраться как сделать чтоб после оплаты заказа не открывался новый быстрый чек, а открывалось ГМ.

sibgaba
14.07.2020, 10:19
Осталось разобраться как сделать чтоб после оплаты заказа не открывался новый быстрый чек, а открывалось ГМ.

А это зачем?
У вас при создании нового заказа на ВДУ что то происходит?

Можно попробовать в параметрах включить "Создавать быстрый чек с формой", тогда после расчета будет не новый заказ открываться а форма создания нового заказа, в которой нужно будет потом нажать "Ок"

pixnet
14.07.2020, 10:36
А это зачем?
У вас при создании нового заказа на ВДУ что то происходит?

ВДУ тут не причем, необходимо было после БЧ открывать ГМ, чтоб таймер не тикал.

Применил это решение:

6997

Заменил RK7.PostOperation(rkoUnregister,0); на RK7.PerformOperation(rkoCancelOrder, 500);

pixnet
15.07.2020, 09:15
rkoCancelOrder - это закрытие заказа без сохранения, поэтому в этом случае заказы на VDU появляются зачеркнутыми, и иногда на кассе возникает ошибка "нельзя сохранить заказ, он не был заблокирован", пока поиски решения продолжаются :(