Описание шаблона

Шаблон чека внесения/изъятия

Шаблон имеет строго определенную,но расширяемую структуру. Шаблон чека описан в формате JSON и имеет обязательные переменные.

Пример чека внесения/изъятия

Базовая структура шаблона чека:

{
  "margin_left": 0,
  "margin_right": 10,

  "variables":{
    "cash_in":"Внесение",
    "cash_out":"Изъятие"
  },
  "body":[  ]
}
Переменные, отвечающие за отображение данных:
  • "margin_left" - Отступ в пикселях от края слева;
  • "margin_right" - Отступ в пикселях от края справа;
  • "alignment" - выравнивание текста. 0 - по левому краю, 1 - по центру, 2 - по правому краю;
  • <SF> - заполнение пробелами (" ");
  • <DF> - заполнение прочерками ("-");
  • <UF> - заполнение знаком ("_");
  • <EF> - заполнение знаком равенства ("=");
  • <PF> - заполнение знаком плюс ("+");
  • <AF> - заполнение знаком звёздочка ("*").
Текстовые переменные:
  • "cash_in":"Внесение" - Текст для позиции внесения, используется в переменной cash_type.
  • "cash_out":"Изъятие" - Текст для позиции изъятия, используется в переменной cash_type.

Структура шаблона имеет один раздел:

body - Тело шаблона чека.

Содержит информацию о кассире, кассе, дате внесения или изъятия, сумме изъятия.

"body":[
    {
      "text" : "<doc.date><SF><doc.time>",
      "font" : "Lucida Console, 8pt",
      "interval" : -3,
      "alignment": 1
    },
    {
      "text" : "КАССИР:<SF><doc.cashier_name>",
      "font" : "Lucida Console, 8pt",
      "interval" : -3,
      "alignment": 1
    },
    {
      "text" : "<cash_type><SF><cash_value>",
      "font" : "Lucida Console, 8pt, style=bold",
      "interval" : -3,
      "alignment": 1
    },
  ]

В разделе доступны для использования следующие переменные:

  • doc.cash_id - ID кассы
  • doc.date - Дата регистрации чека
  • doc.time - Время регистрации чека
  • doc.cashier_name - Имя кассира
  • cash_type - Тип операции. Данные переменной берутся из переменных в начале шаблона.
  • cash_value - Значение суммы операции.

Если текстовый блок в разделе включает в себя следующие теги, то текстовое содержимое блока игнорируется и в блоке отображается указанное изображение:

  • "img_src":"\Cheque\regos.png" - Адрес изображения
  • "img_width":180 - ширина изображения в пикселях
  • "img_height":180 - высота изображения в пикселях

Пример:

    {
      "text" : "",
      "font" : "",
      "interval" : 30,
      "alignment": 1,
      "img_src":"\\Cheque\\regos.png",
      "img_width":180,
      "img_height":180
    },

Пример чека внесения/изъятия