Шаблоны печати чеков

Материал из Касса
Перейти к навигации Перейти к поиску
Подраздел Шаблоны печати

Печатные формы - это механизм редактирования шаблонов, который позволяет централизованно конструировать/редактировать/обновлять печатные формы документов, используемые на РМК кассиром.
Шаблоны предназначены для печати на ККТ средствами не фискальной печати.


Создавать шаблоны можно будет для следующих документов учета:

  • Оприходование
  • Списание
  • Инвентаризация
  • Перемещение
  • Заказ на закупку


Также можно будет создавать индивидуальные шаблоны для Фискальных документов:

  • Чек

Для Фискальных документов доступно только редактирование Шапки и Подвала чека.

Note.svg Примечание

  • Шапка чека - представляет собой заголовок чека и обычно содержит приветствие и данные организации (адрес, телефон, объект, ФИО директора и др. информацию).
  • Подвал чека - это нижняя часть чека, которая расположена после его итоговых строк и позволяет указать там дополнительную информацию о (способах возврата, описание акции, добавить картинку, эмблему организации и др.)


Подраздел Шаблоны печати представлен в виде таблицы в которой собраны все созданные шаблоны печатных форм организации.
Табличная часть содержит в себе следующую информацию:

  • Наименование шаблона
  • Тип документа

Также в подразделе предусмотрена система фильтров для более удобного поиска шаблонов.


Создание шаблона

Шаблон печатной формы для фискальных чеков
Шаблон печатной формы для документов учета

Для создания шаблона совершите следующие действия:

  • Перейдите в подраздел Шаблоны печати
  • Нажмите на кнопку Создать
  • Во всплывающем окне:
    • Выберите Тип документа
    • Укажите название шаблона:
      • Для фискальных документов внесите описание в окна Шаблон шапки и Шаблон подвала
      • Для документов учета внесите описание в окно Шаблон
    • При необходимости добавить изображение нажмите кнопку Добавить и добавьте изображения с вашего компьютера
  • В правой части экрана будет отображаться окно Предварительный просмотр, для просмотра созданного описания нажмите кнопку Значок Обновить.png
  • Для завершения создания шаблона нажмите кнопку Сохранить


Note.svg Примечание

  • Для удаления шаблона в подразделе Шаблоны печати установите чекбокс в ячейке шаблона и нажмите кнопку Удаление в Личном кабинете.png.


Список поддерживаемых касс (Android)

САЛЮТ 12Ф АТОЛ MSPOS НЕВА/ПЕЙМОБ ШТРИХ-М МЕРКУРИЙ

✅Печать изображения
✅Печать шрифтов разного размера
✅Жирный шрифт
✅Курсивный шрифт
✅Подчеркнутый
✅Центрирование
✅Штрихкод
✅QR-code

❌Печать изображения
✅Печать шрифтов разного размера
❌Жирный шрифт
❌Курсивный шрифт
❌Подчеркнутый
✅Центрирование
✅Штрихкод
✅QR-code

✅Печать изображения (только формат картинки jpg)
✅Печать шрифтов разного размера
❌Жирный шрифт
❌Курсивный шрифт
❌Подчеркнутый
✅Центрирование
✅Штрихкод
✅QR-code

❌Печать изображения
✅Печать шрифтов разного размера
✅Жирный шрифт
❌Курсивный шрифт
❌Подчеркнутый
✅Центрирование
✅Штрихкод
❌QR-code

❌Печать изображения
❌Печать шрифтов разного размера
❌Жирный шрифт
❌Курсивный шрифт
❌Подчеркнутый
✅Центрирование
✅Штрихкод
✅QR-code

❌Печать изображения
❌Печать шрифтов разного размера
❌Жирный шрифт
❌Курсивный шрифт
❌Подчеркнутый
✅Центрирование
❌Штрихкод
✅QR-code

Список поддерживаемых касс (Desktop)

АТОЛ МЕРКУРИЙ ШТРИХ-М ДРИМКАСС

❌Печать изображения
✅Печать шрифтов разного размера
❌Жирный шрифт
❌Курсивный шрифт
❌Подчеркнутый
✅Центрирование
✅Штрихкод
✅QR-code

❌Печать изображения
❌Печать шрифтов разного размера
❌Жирный шрифт
❌Курсивный шрифт
❌Подчеркнутый
✅Центрирование
✅Штрихкод
❌QR-code

❌Печать изображения
❌Печать шрифтов разного размера
❌Жирный шрифт
❌Курсивный шрифт
❌Подчеркнутый
✅Центрирование
✅Штрихкод
✅QR-code

❌Печать изображения
❌Печать шрифтов разного размера
❌Жирный шрифт
❌Курсивный шрифт
❌Подчеркнутый
✅Центрирование
✅Штрихкод
✅QR-code


Пример создания шаблона

При создании шаблона печати необходимо использовать следующие параметры:

Параметры для редактирования текста
Описание Параметр
Методы печати данных
Параметр для написания текста.
Пример: text('Строка по центру', 'CENTER')

Возможные значения второго аргумента:

  • LEFT
  • CENTER
  • RIGHT
text('текст')
Написание текста в одну строчку установите символ между параметрами или между текстом и параметром
Пример: text('Организация:'+ organization.name)
+
При использовании обычного текста необходимо обозначить его, для этого используйте данный символ.

Важно!:

  • Символ необходимо указывать в начале и в конце текста
  • При указании параметров данный символ не используется
  • Текст указанный без данных символов не будет напечатан в чеке
Пример: text('Организация:',organization.name)
'
Вывод даты/времени. Форматирует строку с датой при помощи формата, заданного выше
Пример: text(formatDate(document.documentDate))
formatDate(document.documentDate)
Выравнивание текста слева-справа.
Пример:lr('Строка слева',                                      'Строка справа')
lr
Положение изображения на чеке (слева, по центру, справа).
Пример:image('Имя изображения')

Возможные значения второго аргумента:

  • LEFT
  • CENTER
  • RIGHT

Если изображение с данным именем не найдется, то распечатается пустая строка

image
Штрихкод в формате ean8.
Пример:ean8('12345678', 'CENTER') 

Печать штрихкода с заданными ранее выравниванием setAlignment('CENTER')

  • LEFT
  • CENTER
  • RIGHT
ean8
Штрихкод в формате ean13.
Пример:ean13('1234567891011', 'CENTER') 

Печать штрихкода с заданными ранее выравниванием setAlignment('CENTER')

  • LEFT
  • CENTER
  • RIGHT
ean13
Штрихкод в формате code128.
Пример:code128('123456', 'CENTER')

Печать штрихкода с заданными ранее выравниванием setAlignment('CENTER')

  • LEFT
  • CENTER
  • RIGHT
code128
Штрихкод в формате qrCode.
Пример:qrCode('12345678', 'CENTER')

Печать штрихкода с заданными ранее выравниванием setAlignment('CENTER')

  • LEFT
  • CENTER
  • RIGHT
qrCode
Печать пустой строки.
Пример:feed()
feed
Повторить символ на всю ширину строки
Пример:repeat(_)
repeat
Печать каждой позиции с новой строки. Для каждой позиции документа, наименование будет печататься на новой строке for(let item of items) { }
Форматирует список характеристик номенклатуры, перечисляя их через запятую,
если характеристик у товара не предусмотрено или список характеристик пустой, то автоматически ставится прочерк
Пример: for(let item of items) {text(formatFeatures(item.nomenclatureFeatures))}
formatFeatures(item.nomenclatureFeatures)
Форматирует цену, добавляя знак рубля в конце, отсекая десятые доли копеек.
Если цена, переданная как аргумент в данный метод, не установлена у данного товара, то автоматически ставится прочерк
Пример: for(let item of items) {left (formatPrice(item.purchasePrice))}
formatPrice(item.purchasePrice)
Форматирует единицу измерения
Пример: for(let item of items) {left (formatQuantity(item.quantity, item.unitCode))}
formatQuantity(item.quantity, item.unitCode)
Команды для изменения стиля текста
Выравнивание последующего текста.
Пример: setAlignment('CENTER')

Возможные значения второго аргумента (по-умолчанию LEFT):

  • LEFT
  • CENTER
  • RIGHT
setAlignment('CENTER')
Изменение стиля шрифта.
Пример: setStyle('NORMAL')

Меняет стиль шрифта, по-умолчанию NORMAL, возможные значения:

  • 'NORMAL' (обычный)
  • 'BOLD' (жирный)
  • 'ITALIC' (курсив)
  • 'UNDERSCORED' (подчеркнутый)
setStyle('NORMAL')
Изменение размера текста.
Пример: setSize('MEDIUM')

Меняет размер текста, по-умолчанию MEDIUM, возможные значения:

  • 'SMALL'
  • 'MEDIUM'
  • 'LARGE'
  • 'X_LARGE'
setSize('MEDIUM')
Формат вывода даты.

Задает формат вывода даты (формат по-умолчанию: dd-MM-yyyy). Перечень форматов Форматы дат.

setDateFormat('dd.MM.yyyy')
Сброс стиля текста до исходных значений.

Команда сброса стиля текста до исходных значений (LEFT, NORMAL, MEDIUM, формат даты: dd-MM-yyyy)

reset()


Параметры данных
Описание Параметр
Пользователь (сущность user)
Имя кассира user.firstName
Фамилия кассира user.lastName
Отчество кассира user.patronymic
Должность продавца user.position
ИНН продавца user.inn
Торговый объект (сущность tradeObject)
Наименование Торгового объекта tradeObject.name
Адрес Торгового объекта/ Место расчетов tradeObject.address
КПП Торгового объекта tradeObject.kpp
Организация (сущность organization)
Наименование организации organization.name
ИНН организации organization.inn
КПП организации organization.kpp
Адрес организации organization.address
Типы документов(сущность document)
Дата создания документа document.documentDate
Номер документа document.documentNumber
Ф.И.О. Ответственного document.responsiblePerson
Комментарий к документу document.description
Позиции документа (сущность items) доступ к отдельной позиции только через цикл for(let item of items) { }
Вывод характеристик позиции formatFeatures(item.nomenclatureFeatures)
Наименование позиции item.name
Штрихкод item.barcode
Артикул item.vendorCode
Цена закупки formatPrice(item.purchasePrice)
Количество товара item.quantity
Сумма позиции formatPrice(item.amount)
Сумма позиции для учетных документов formatPrice(item.sellingPrice)
Для документа ОПРИХОДОВАНИЕ
Сумма НДС для акта "Оприходования" formatPrice(item.vatAmount)
Название НДС позиции item.vat
Итого Сумма закупки по всем товарам document.totalPurchaseAmount
Итого Сумма продажи по всем товарам document.totalSellingAmount
Информация о контрагенте document.contractor.shortName - ФИО контрагента

document.contractor.inn - ИНН контрагента
document.contractor.address - Адрес контрагента

Для документа ПЕРЕМЕЩЕНИЕ
Количество принятого товара (Для акта "Перемещения") item.acceptedQuantity
ФИО сотрудника принявшего перемещение товара document.acceptedPerson
ТО Отправитель (Для акта "Перемещения") tradeObjectFrom.address
ТО Получатель (Для акта "Перемещения") tradeObjectTo.address
Итого Сумма закупки по всем товарам document.totalPurchaseAmount
Для документа ИНВЕНТАРИЗАЦИЯ
Остаток товара item.accountBalance
Фактический остаток товара item.actualBalance
Разница остатков (шт.) item.variance
Разница остатков formatPrice(item.varianceAmount)
Недостача по товарам (в рублях) document.totalShortageAmount
Избыток по товарам (в рублях) formatPrice(item.varianceAmount)
Цена продажи позиции (в ТО) item.sellingPrice
Для документа СПИСАНИЕ
Итого Сумма закупки по всем товарам document.totalPurchaseAmount
Итого Сумма продажи по всем товарам document.totalSellingAmount
Информация о контрагенте document.contractor.shortName - ФИО контрагента

document.contractor.inn - ИНН контрагента
document.contractor.address - Адрес контрагента

Информация о статье списания document.writeOffArticle.name - Наименование статьи списания

document.writeOffArticle.articleNumber - Номер статьи списания

Для документа ЗАКАЗ НА ЗАКУПКУ
Итого Сумма закупки по всем товарам document.totalPurchaseAmount



В приведенной ниже таблице содержится перечень данных доступных для изменения/использования при создании шаблона печати.

Параметры доступные для изменения в шаблонах печати
Приход/Расход Оприходование Списание Перемещение Инвентаризация Заказ на закупку
Основные данные * Наименование организации
* ИНН организации
* Торговый объект
* Адрес Торгового объекта
* Наименование организации
* ИНН организации
* Торговый объект
* Адрес Торгового объекта
* Дата создания документа
* Дата обновления документа
* Ответственный
* Наименование организации
* ИНН организации
* Торговый объект
* Адрес Торгового объекта
* Дата создания документа
* Дата обновления документа
* Ответственный
* Наименование организации
* ИНН организации
* Торговый объект
* Торговый объект передающий
* Торговый объект принимающий
* Дата создания документа
* Дата обновления документа
* Ответственный Передающий
* Ответственный Принимающий
* Наименование организации
* ИНН организации
* Торговый объект
* Адрес Торгового объекта
* Дата создания документа
* Дата обновления документа
* Ответственный
* Наименование организации
* ИНН организации
* Торговый объект
* Адрес Торгового объекта
* Дата создания документа
* Дата обновления документа
* Ответственный
Позиции в документе * Наименование
* Артикул
* Штрих код
* Цена
* Количество позиций
* Единица измерения
* Характеристики
* Цена закупки
* Наценка
* Цена продажи
* НДС%
* НДС
* Сумма по позиции(Цена*Количество)
* Наименование
* Артикул
* Штрих код
* Цена
* Количество позиций
* Единица измерения
* Характеристики
* Цена закупки
* Наценка
* Цена продажи
* НДС%
* НДС
* Сумма по позиции(Цена*Количество)
* Остаток
* Наименование
* Артикул
* Штрих код
* Цена
* Количество позиций
* Единица измерения
* Характеристики
* Цена закупки
* Наценка
* Цена продажи
* НДС%
* НДС
* Сумма по позиции(Цена*Количество)
* Количество отправленных
* Количество принятых
* Наименование
* Артикул
* Штрих код
* Цена
* Количество позиций
* Единица измерения
* Характеристики
* Цена закупки
* Наценка
* Цена продажи
* НДС%
* НДС
* Сумма по позиции(Цена*Количество)
* Остаток
* Фактический остаток
* Разница (Фактический остаток – Остаток)
* Сумма разницы (Цена закупки*Разница)
* Недостача
* Избыток
* Наименование
* Артикул
* Штрих код
* Цена
* Количество позиций
* Единица измерения
* Характеристики
* Цена закупки
* Наценка
* Цена продажи
* НДС%
* НДС
* Сумма по позиции(Цена*Количество)
Прочие данные * Итого (Сумма всех позиций)
* Контрагент
* Комментарий
* Итого (Сумма всех позиций)
* Контрагент
* Статья списания
* Комментарий
* Итого (Сумма всех позиций)
* Комментарий
* Итого (Сумма всех позиций)
* Комментарий
* Итого (Сумма всех позиций)


Примеры шаблонов печати

Шаблон "Чек" Шаблон "Списание" Шаблон "Оприходование" Шаблон "Перемещение" Шаблон "Инвентаризация" Шаблон "Заказ на закупку"
Шаблон Шапки
setStyle('UNDERSCORED')
setSize('SMALL') 
setAlignment('CENTER')
text('Добро пожаловать в '+ organization.name)
image ('Шаблон 1.jpg')
feed()
feed()

Шаблон Подвала

setStyle('BOLD')
setAlignment('CENTER')
setSize('SMALL')
text('Ждем вас снова!')
feed()
feed()
text('Посетите наш сайт')
text('перейдите по QR')
feed()
qrCode('https://kassa.bifit.com/', 'CENTER')
setAlignment ('CENTER')
setSize ('SMALL')
setStyle('ITALIC')
text ('Документ Списания')
text(document.documentNumber)
setDateFormat('dd.MM.yyyy')
text(formatDate(document.documentDate))
feed ()
code128 (document.documentNumber)
feed ()
lr('Организация:',organization.name)
lr('Торговый объект: ',tradeObject.name)
feed ()
reset ()
for(let item of items) {
 repeat ('-')
 text(item.name)
 text('Артикул:' + item.vendorCode)
 text('Характеристика:'+formatFeatures(item.nomenclatureFeatures))
 lr('Списано:', item.quantity+'шт')
 lr('Остаток:', item.accountBalance+'шт.')
 lr('Цена закупки:', formatPrice(item.purchasePrice))
 lr('Цена продажи:',formatPrice(item.sellingPrice))
 feed ()
 setStyle('BOLD')
 lr('ИТОГО:',formatPrice(item.amount))
 reset ()
 feed ()
}
repeat ('-')
feed ()
feed ()
lr(user.position, document.responsiblePerson)
feed ()
lr('Подпись:', '________________')
feed ()
text(document.description)
feed ()
qrCode ('https://kassa.bifit.com','CENTER')
setAlignment ('CENTER')
setSize ('SMALL')
setStyle('ITALIC')
text ('Документ оприходования')
text(document.documentNumber)
setDateFormat('dd.MM.yyyy')
text(formatDate(document.documentDate))
feed ()
code128 ('document.documentNumber')
feed ()
lr('Организация:',organization.name)
lr('Торговый объект: ',tradeObject.name)
feed ()
reset ()
for(let item of items) {
  repeat ('-')
  text(item.name)
  text('Артикул:' + item.vendorCode)
  lr('Количество:', item.quantity+'шт')
  text('Характеристика:'+formatFeatures(item.nomenclatureFeatures))
  lr('Цена закупки:', formatPrice(item.purchasePrice))
  lr('Цена продажи:',formatPrice(item.sellingPrice))
  text('НДС:'+formatPrice(item.vatAmount))
  feed ()
  setStyle('BOLD')
  lr('ИТОГО:',formatPrice(item.amount))
  reset ()
  feed ()
}
repeat ('-')
feed ()
lr(user.position, document.responsiblePerson)
feed ()
lr('Подпись:', '________________')
feed ()
feed ()
text(document.description)
feed ()
qrCode ('https://kassa.bifit.com','CENTER')
setAlignment ('CENTER')
setSize ('SMALL')
setStyle('ITALIC')
text ('Перемещение')
text(document.documentNumber)
setDateFormat('dd.MM.yyyy')
text(formatDate(document.documentDate))
lr('Организация:',organization.name)
feed ()
code128 (document.documentNumber)
feed ()
lr('ТО отправитель: ', tradeObjectFrom.address)
lr('ТО получатель: ', tradeObjectTo.address)
feed ()
reset ()
for(let item of items) {
  repeat ('-')
	text( item.name)
  text('Артикул:' + item.vendorCode)
  text('ШК:' + item.barcode)
	text('Характеристика:'+formatFeatures(item.nomenclatureFeatures))
  lr('Цена закупки:', formatPrice(item.purchasePrice))
  lr('Кол-во переданного товара:', item.quantity+'шт')
  lr('Кол-во принятого товара:', item.acceptedQuantity+'шт')
  lr('Расхождение',item.acceptedQuantity-item.quantity+'шт.')
  lr('Сумма товара:',formatPrice(item.amount))
  feed ()
}
repeat ('-')
feed ()
lr('Отправил:', document.responsiblePerson)
feed ()
lr('Подпись:', '________________')
feed ()
feed ()
lr('Принял:', document.acceptedPerson)
feed ()
lr('Подпись:', '________________')
feed ()
feed ()
text(document.description)
feed ()
qrCode ('https://kassa.bifit.com','CENTER')
setAlignment ('CENTER')
setSize ('SMALL')
setStyle('ITALIC')
text ('Инвентаризация товаров')
text(document.documentNumber)
setDateFormat('dd.MM.yyyy')
text(formatDate(document.documentDate))
feed ()
code128 (document.documentNumber)
feed ()
lr('Организация:',organization.name)
lr('Торговый объект: ',tradeObject.name)
feed ()
reset ()
for(let item of items) {
  repeat ('-')
  lr(item.name,formatPrice(item.purchasePrice))
  text('Артикул:' + item.vendorCode)
  text('ШК:' + item.barcode)
  text('Характеристика:'+formatFeatures(item.nomenclatureFeatures))
  lr('Остаток:', item.accountBalance+'шт.')
  lr('Фактический Остаток:', item.actualBalance+'шт.')
  lr('Разница:', item.variance+'шт.')
  lr('Сумма разницы:', formatPrice(item.varianceAmount))
  feed ()
}
repeat ('-')
feed ()
lr(user.position, document.responsiblePerson)
feed ()
lr('Подпись:', '________________')
feed ()
text(document.description)
feed ()
qrCode ('https://kassa.bifit.com','CENTER')
setAlignment('CENTER')
setSize('SMALL')
setStyle('ITALIC')
text('Заказ на закупку')
text(document.documentNumber)
setDateFormat('dd.MM.yyyy')
text(formatDate(document.documentDate))
feed()
code128(document.documentNumber)
feed()
lr('Торговый объект:', tradeObject.name)
feed()
reset()
for(let item of items) {
  repeat('-')
  text(item.name)
  lr('Количество товара:', formatQuantity(item.quantity, item.unitCode))
  lr('Сумма:', formatPrice(item.amount))
  feed()
}
repeat('-')
feed()
feed()
lr(user.position, document.responsiblePerson)
feed()
lr('Подпись:', '________________')
feed()
text(document.description)
feed()
qrCode('https://kassa.bifit.com', 'CENTER')