Перейти до змісту

Чеки рахунків клієнтів

Шаблон касового чека: як саме виглядатиме стрічка, що вилізе з чекового принтера, коли з рахунку клієнту натиснути друк чека.

Де шукати: Модулі → Друк чеків → Регістри → Чеки рахунків клієнтів

Шаблон — це звичайний текст, у який вплетені два роди підстановок, обидва у фігурних дужках: команди принтера і теги полів, які система замінює даними документа.

!!! note "Це про касовий чек, а не про бланк рахунку" Якщо треба надрукувати сам рахунок клієнту на звичайний папір — це робиться кнопкою з принтером у картці документа і друкованою формою, див. Друк документа. Тут налаштовується лише стрічка чекового принтера.

Як створити «Чеки рахунків клієнтів»

Пункт меню — «Чеки рахунків клієнтів» у модулі «Друк чеків». Далі звичайний порядок: кнопка створення нового запису, заповнити поля, зберегти.

Що заповнювати в новому записі:

  • Чек — код шаблона. Можна лишити порожнім, система підставить наступний номер сама; але друк рахунку шукає шаблон саме з кодом 1, тому першому, робочому шаблону поставте 1 вручну;
  • К-сть символів — ширина стрічки у знаках (32 для стандартної 58-мм стрічки);
  • Коментар — назва шаблона для людей;
  • текст чека — сам шаблон: команди принтера й теги полів у фігурних дужках, які система замінить даними документа. Розбір обох родів підстановок — нижче.

Найпростіше не писати текст з нуля, а скопіювати готовий шаблон із демонстраційної бази й поправити під свої реквізити та ширину стрічки.

Розбір на прикладі

Журнал шаблонів чеків

У журналі — код шаблона і коментар. Тут один шаблон, з кодом 1 — саме той, який бере друк рахунку.

Шаблон чека

  • Чек — код шаблона. Друк рахунку бере шаблон з кодом 1; інші коди зберігаються «про запас».
  • К-сть символів — ширина стрічки у знаках (звідси система знає, де переносити довгі назви). Для стандартної 58-мм стрічки це зазвичай 32.
  • Коментар — назва шаблона для людей.
  • Велике поле — сам текст чека.

Команди принтера

Пишуться у фігурних дужках і перетворюються на службові коди принтера:

{setMiddleAlignment}, {setLeftAlignment}, {setRightAlignment} — вирівнювання; {bigLetterOn} / {bigLetterOff}, {setTextSize}, {setFontA} / {setFontB} — розмір і шрифт; {setBoldOn} / {setBoldOff}, {setUnderlineOn} / {setUnderlineOff} — жирний і підкреслення; {cutReceipt} — відрізати стрічку (ставлять у кінці).

Слова-поля

Підстановки документа — теж у фігурних дужках, і пишуться вони завжди однаково, незалежно від мови інтерфейсу: {Номер_замовлення}, {Дата}, {Клієнт}, {Склад}, {Власник}, {ПІБ}, {Тел.1}, {Тел.2}, {email}, {Адреса}, {ТТН}, {Всього}, а {Matrix} — рядки документа (назва, серійний номер, кількість, ціна, сума). Підписи {(Тел.1:)}, {(Тел.2:)}, {(email:)}, {(Адреса:)} друкуються мовою інтерфейсу й зникають разом зі значенням, коли поле порожнє. {[текст]} — довільний текст, перенесений за шириною стрічки (лише перший такий блок у шаблоні).

Тег, написаний інакше (наприклад, {Номер} замість {Номер_замовлення}), система не впізнає й друкує як текст.

{Власник} і {Адреса} друкуються порожніми: ці поля рахунку клієнту система не заповнює, тож разом з {Адреса} зникає й підпис {(Адреса:)}.

Куди йде надрукований чек

Готовий текст лягає у «Чергу друку», звідки його забирає принтер. Друк чека з рахунку починається, лише коли в «Налаштуваннях друку» заповнено обидва поля; самих значень у завдання система не кладе. POS-каса цим шаблоном не користується: свій чек вона будує сама й друкує через браузер касового компʼютера.

Часті ситуації

Чек не друкується взагалі. Немає шаблона з кодом 1 — саме його шукає друк рахунку. Або шаблон з кодом 1 є, але без тексту — тоді вікно скаже «Текст запису «1» у «Чеки рахунків клієнтів» порожній: на друк нічого не надіслано».

У чеку видно {setBoldOn} та інші дужки. Команда написана з помилкою — система замінює лише точні назви зі списку вище, решту друкує як текст.

Замість значення в чеку надруковано тег, наприклад {Клиент}. Тег написаний не так, як у списку вище (тут — російською): теги однакові для всіх мов інтерфейсу й не перекладаються — пишіть їх саме так.

Довгі назви «з'їхали». Перевірте «К-сть символів» — вона має відповідати реальній ширині стрічки.