Смена статуса заказа по QR-коду
Введение
В системе KDS PRO есть возможность изменять статус заказа по QR-коду.
Для этого вам понадобится USB сканер QR-кодов, работающий в режиме HID-клавиатуры и подключенный к клиенту KDS PRO.
В статье рассматривается печать чека после присвоения заказу статуса Приготовлен.
Настройка через XML-макет
Первый способ, который мы рассмотрим — печать QR-кода через изменение XML-макета чека.
Для правильной работы необходимо, чтобы в менеджерской станции был создан принтер, на который будут посылаться отредактированный макет чека.
Назначение принтеров
- Откройте менеджерскую станцию и перейдите в меню Настройки > Печать > Назначение принтеров
- Нажмите правой кнопкой мыши и выберите пункт Новое назначение принтера
- Укажите название — KDS PRO
- Сохраните и закройте меню Назначение принтеров
- В настройках кассовой станции появится новая строчка — KDS PRO в разделе Назначение принтеров.
- Назначьте в этом поле предварительно настроенный и работающий принтер — он будет печатать QR-коды для KDS PRO. Прочитать подробнее о принтерах можно в статье настройка кассовой станции.
- По желанию, этот принтер можно использовать и с сервис-печатью.
- Сохраните и закройте настройки кассовой станции.
Настройка в личном кабинете
Принтер создан, теперь необходимо связать его с KDS PRO.
- Перейдите в личный кабинет KDS PRO и авторизуйтесь
- Выберите требуемый сервер и нажмите на него
- Откроется список клиентов. Нажмите на клиента
- Пролистайте до раздела Печать и нажмите кнопку Добавить
- В настройках печати:
- Укажите название, например, Печать чека с QR-кодом
- Выберите кассу из выпадающего списка
- Выберите статус, при получении которого будет печататься чек. Мы выберем Приготовлен
- Выберите назначение принтеров — ранее созданное, т.е. KDS PRO
- Выберите что печатать на чеке — заказ или блюдо. Обратите внимание, что в зависимости от выбора, необходимо будет редактировать соответствующий макет чека. Мы выберем Заказ.
- Поставьте галочку Включено
- В XML-запрос блюда или заказа добавьте текст QR-кода:
<BarCode Width="200" Height="200" Type="QRCode" TextPosition="Bottom" Value = "[QRCode]"/>
6. Ширину и высоту QR-кода можно настраивать, редактируя значения в параметрах Width и Height
7. В результате должны получиться такие настройки:
8. Обратите внимание, что строку <Barcode... необходимо вставлять до закрывающего тега </Unfiscal> — иначе печать QR-кода работать не будет.
9. Нажмите кнопку внизу страницы для сохранения изменений
10. QR-код должен печататься на чеке.
Пример чека блюда с QR-кодом:
Пример чека с QR-кодом для заказа:
Настройка через редактирование макета чека
Другой вариант печати QR-кодов это изменение макета чека.
Настройка макета
К заявке приложен файл макета пречека с QR-кодом. Этот макет будет печатать QR-код, после сканирования которого, закзаз со статусом приготовлен сбрасывается на клиенте.
По желанию, можно импортировать его целиком или отредактировать существующий.
Процесс импорта макета описан в статье о редактировании макета чека.
Чтобы добавить QR-код в существующий макет:
- Создайте копию желаемого макета чека
- Отредактируйте дизайн созданного макета — добавьте новый виртуальный бенд
- Создайте на нем мемо
- Отредактируйте мемо — добавьте в него скрипт:
- В верхней части напишите [qr_code]
- В нижней части добавьте скрипт:
var s,r:string; i,j:integer; begin s:=[Заказы.GUID]; if s<>'' then begin s:=copy(s,2,8)+copy(s,11,4)+copy(s,16,4)+copy(s,21,4)+copy(s,26,12); r:=''; for i:=1 to length(s) do begin case s[i] of 'A': r:='10'+r; 'B': r:='11'+r; 'C': r:='12'+r; 'D': r:='13'+r; 'E': r:='14'+r; 'F': r:='15'+r; else begin r:=s[i]+r; j:=random(8)+2; r:=inttostr(j)+r; if j=9 then begin j:=random(10); r:=inttostr(j)+r; end; if j=7 then begin j:=random(10); r:=inttostr(j)+r; j:=random(10); r:=inttostr(j)+r; end if j=4 then begin j:=random(10); r:=inttostr(j)+r; j:=random(10); r:=inttostr(j)+r; j:=random(10); r:=inttostr(j)+r; j:=random(10); r:=inttostr(j)+r; end end end; end r:='<QRCODE _'+r+'_ >'; qr_code := r; end else begin qr_code := ''; end end
7. Выглядеть это должно так:
8. Нажмите Оk, чтобы сохранить изменения
9. Закройте дизайнер макетов
10. В результате, на чеке будет печататься QR-код, который можно отсканировать на клиенте KDS PRO. После сканирования, заказ со статусом Приготовлен будет сбрасываться.
11. Чек из приложенного макета с QR-кодом будет выглядеть так: