Разработчик
прикладных скриптов и
компонентов расширений имеет возможность создавать собственные значения для подстановки в текст
печати по шаблону. Для этого в
шаблон печати вставляются
специальные макроимена, которые при подготовке текста печати автоматически заменяются значениями переменных
платёжного сеанса.
Для
макроимени вида
«перем:Имя» (или
«var:Имя», или
«prop:Имя») при печати выполняется подстановка значения переменной
«Имя».
Может использоваться любой из префиксов
«перем:»,
«var:», или
«prop:», по усмотрению разработчика
шаблона. Двоеточие обязательно, непосредственно после двоеточия без дополнительных разделителей указывается имя переменной
платёжного сеанса.
Допустим, наш
прикладной скрипт при
приёме платежа требует указывать некоторый номер лицевого счёта и фамилию плательщика, и перед нами стоит задача указать эти данные в чеке, формируемом по
шаблону.
Нужные нам значения не предусмотрены в
свойствах чека и
макроименах шаблонов печати, но мы можем добавить собственные именованные значения.
Для этого в ходе
платёжного сеанса мы должны создать соответствующие переменные, например:
CashMatic.Session.AddProp("ЛицевойСчёт", 1234);
CashMatic.Session.AddProp("Фамилия", «Иванов»);
А в шаблон чека вставить ссылки на эти переменные, например:
%{rem:
Пример шаблона чека, в котором используется
макроподстановка значений переменных платёжного сеанса
%}
Лицевой счёт: %(перем:ЛицевойСчёт)
Плательщик: %(перем:Фамилия)
Оплачено: %m руб.
%d %t %(терминал)
%{rem:
ЛицевойСчёт и Фамилия — наши собственные значения, которые при
печати будут подставляться из CashMatic.Session
Что такое %m, %d, %t и %(терминал) — см. Макроимена
%}
Примерный вид чека, который может быть напечатан по такому шаблону |
 |
Совместимость: макроподстановка переменных платёжного сеанса в шаблонах печати поддерживается в NDemia CashMatic, начиная с версии 2.6.2