Чеки¶
Шаблоны чеков¶
ATMCloseTemplate.txt– закрытие ОЦ банкомата (без диспенсера).ATMOpenTemplate.txt– открытие ОЦ банкомата (без диспенсера).ATMStattisticsTemplate.txt– текущее состояние банкомата (без диспенсера).AdmFailureTemplate.txt– сбойное депонирование на АДМ.AdmLostConnectionTemplate.txt– потеря связи с интеграционным сервером при выполнении финансового запроса.AdmSuccessTemplate.txt– успешное депонирование на АДМ.BalanceErrorTemplate.txt– тасходный лимит (отказ). Неуспешное выполнение операции.BalanceTemplate.txt– расходный лимит.CardRetrievedTemplate.txt– задержанные карты. При сбросе счетчика задержанных карт.CashInErrorTemplate.txt– взнос наличных денежных средств. Неуспешное завершение операции.CashInReturnNoCardTemplate.txt– оплата наличными без карты. Платеж не состоялся.CashInReturnWithCardTemplate.txt– оплата наличными с картой. Платеж не состоялся. Возврат наличных – отказ.CashInReturnWithCardTemplate_PM.txt– возврат наличных.CashInTemplate.txt– взнос наличных денежных средств.CrmCloseTemplate.txt– закрытие опер. цикла рециклера. Статистика за весь ОЦ.CrmOpenTemplate.txt– открытие опер.цикла рециклера.CrmStatisticsTemplate.txt– текущее состояние рециклера. Состояние опер. цикла, статистика принятых банкнот.DmClearCountersTemplate.txt– сброс счетчиков депозитного модуля УС.DmExchSopTransactionFailureTemplate.txt– сбой выполнения транзакционного запроса инкассатора «Баланс депозитного модуля».DmExchangeTemplate.txt– закрытие операционного цикла депозитного модуля УС.DmOpenExchangeTemplate.txt– открытие операционного цикла депозитного модуля УС.DmStatisticsTemplate.txt– текущее состояние депозитного модуля УС.HistoryErrorTemplate.txt– получение выписки о 10 последних операциях по банковской карте. Ошибка.HistoryTemplate.txt– получение выписки о 10-ти последних операциях по банковской карте.MobilePayErrorTemplate.txt– безналичная оплата услуг. Неуспешное завершение операции.MobilePayTemplate.txt– безналичная оплата услуг. От биллинговой системы получателя платежа не получено подтверждение о зачислении средств в режиме реального времени.ProsetPayErrorTemplate.txt– безналичная оплата услуг. Неуспешное завершение операции.SettlementTemplate.txt– сверка итогов.SettlementTemplate.txt– сверка итогов.TransferErrorTemplate.txt– перевод с карты на карту. Неуспешное завершение операции.TransferTemplate.txt– перевод с карты на карту. Успешное завершение операции.ndc_deposit_deffered_failure_receipt.txt– печатается в случае неуспешного хостового ответа на повторный запрос авторизации транзакции.ndc_deposit_deffered_success_receipt.txt– печатается в случае успешного хостового ответа на повторный запрос авторизации транзакции.ndc_deposit_success_additional_receipt.txt– дополнительный чек с пономинальной разбивкой, печатается после успешной печати хостового чека.rem_account_errorTemplate.txt– чек по ошибке запроса баланса счета.rem_account_okErrorTemplate.txt– чек по ошибке запроса баланса счета.rem_account_okTemplate.txt– запрос баланса счета.rem_load_funds_errorTemplate.txt– загрузка средств на карту. Технический сбой.rem_load_funds_okTemplate.txt– загрузка средств на карту. Успешное завершение операции.
Шаблоны чеков хранятся в папке FS365\Applications\receipts.
Выравнивание содержимого чеков при выводе на печать¶
Начиная с версии 5.7.0.19867, реализовано выравнивание содержимого чеков при выводе на печать в следующем формате:
$module:variable@{C|R},N$
здесь:
C– команда выравнивания по центру;R– команда выравнивания по правому краю;N– предполагаемая ширина чека.
Допускается выравнивание переменных, состоящих из нескольких строк. Например, шаблон с выравниванием по правому краю:
10 20 30 40
---------|---------|---------|---------|
Версия ПроАТМ: $system:version@R,40$
|_______________________|
|
это - декоративные пробелы,
они не препятствуют итоговому
выравниванию
Результат подстановки:
10 20 30 40
---------|---------|---------|---------|
Версия ПроАТМ: 5.7.0.19867
Пример шаблона с выравниванием по центру (многострочный вывод):
10 20 30 40
---------|---------|---------|---------|
$operator-mode:BRANCH_ADDR@C,40$
|______|
|
необязательные
декоративные пробелы
Переменная operator-mode:BRANCH_ADDR содержит текст «111399, г. Москва#NL#Федеративный проспект#NL#д. 15, корп. 4».
Результат подстановки:
10 20 30 40
---------|---------|---------|---------|
111399, г. Москва
Федеративный проспект
д. 15, корп. 4
В версии 5.7.2.22845 реализован вывод в режиме текстовой колонки. Колонка характеризуется следующими свойствами:
смещение относительно левого края чека;
ширина;
режим выравнивания текста внутри колонки;
разбиение слов происходит по пробелам.
Для вывода макроса в режиме текстовой колонки применяется следующий синтаксис:
$module:variable@COLUMN{C|R|L,D,W}$
здесь:
C|R|L– выравнивание текста внутри колонки (C– по центру,R– по правому краю,L– по левому краю);D– смещение колонки относительно левого края чека;W– ширина колонки.
Пример выравнивания по правому краю:
10 20 30 40
---------|---------|---------|---------|
ФИО инкассатора: $operator-mode:USER_NAME@COLUMN{R,17,23}$
|_______________________|
|
это - декоративные пробелы,
они не препятствуют итоговому
выравниванию
Результат подстановки:
10 20 30 40
---------|---------|---------|---------|
ФИО инкассатора: Космачевский
Константин
Константинович
Пример выравнивания по левому краю:
10 20 30 40
---------|---------|---------|---------|
ФИО инкассатора: $operator-mode:USER_NAME@COLUMN{L,20,20}$
|_______________________|
|
это - декоративные пробелы,
они не препятствуют итоговому
выравниванию
Результат подстановки:
10 20 30 40
---------|---------|---------|---------|
ФИО инкассатора: Космачевский
Константин
Константинович
Пример выравнивания по центру:
10 20 30 40
---------|---------|---------|---------|
ФИО инкассатора: $ac-dc:big_gun@COLUMN{C,14,24}$
|_______________________|
|
это - декоративные пробелы,
они не препятствуют итоговому
выравниванию
Результат подстановки:
10 20 30 40
---------|---------|---------|---------|
Вig gun: Riot on the radio,
pictures on the TV.
Invader man take what he
can, shootout on the
,silver screen.Sticking'
Имя переменной |
Описание |
|---|---|
|
Печать в электронный журнал. Теперь при нечетном значении mask чек будет продублирован в электронном журнале |
|
Если данный макрос присутствует, разобранное значение данного чека будет сохранено в файле LastReceipt.txt |
|
В чеке выводится содержимое буфера BarcodeDate (штрихкод содержит информацию в UTF-8) |
|
В чеке выводится содержимое буфера BarcodeDate (штрихкод содержит информацию в 1251) |
|
В чеке выводится список спорных банкнот. Используется в шаблоне чека ISO8583/CashInTemplate.txt |
|
В чеке выводится значение параметра из раздела |
Настройка печати таблиц в чеках¶
В ПроАТМ не предусмотрено автоматического определения ширины ленты чека. Так, например, шириной в 40 символов печатается список инцидентов, выводимый макросом $stat:CASH_ACCEPT_TRANSACTIONS_ATTENTION_REQUIRED$.
Для рисования таблицы шириной в 24 символа была реализована поддержка макроса #SMALL_24, например:
$cash-accept:AMOUNT_ACCEPTED_NNLIST#SMALL_24$#CR##LF#
$cash-accept:AMOUNT_ACCEPTED_NNLIST#WITH_TOTAL#SMALL_24$#CR##LF#
Таблицы, для которых поддерживается данный функционал:
AMOUNT_ACCEPTED_NNLIST;
AMOUNT_DISPUTED_NNLIST;
AMOUNT_RETRACTED_NNLIST;
AMOUNT_LAA_STORED_AND_RETRACTED_NNLIST;
AMOUNT_LAA_STORED_AND_RETRACTED_PERMITTED_NNLIST;
AMOUNT_LAA_STORED_AND_RETRACTED_NOT_PERMITTED_NNLIST;
Макросы, для которых поддерживается данный функционал:
$cash-accept:AMOUNT_ACCEPTED_NNLIST#CR##LF#;$cash-accept:AMOUNT_ACCEPTED_NNLIST#WITH_TOTAL#CR##LF#;$opmode-cashin:CASSETE_BLOCK$#CR##LF#;$opmode-cashin:ACCEPTED_BANKNOTES_BLOCK$#CR##LF#;$stat:CASH_ACCEPT_AUTHORIZED_PAYMENTS_BY_GROUP$;$stat:CASH_ACCEPT_TRANSACTIONS_ATTENTION_REQUIRED$.
Внимание
Макросы содержат суффикс «_24» и прописываются в кастомизацию под банк.
Примечание
Начиная с ревизии 28210 макрос $opmode-cashin:CASSETTE_NO$#CR##LF# был исключен, как неинформативный.
Печать таблицы со списком принятых банкнот¶
Используемый максрос: $cash-accept:AMOUNT_ACCEPTED_NNLIST#WITH_TOTAL$ и $cash-accept:AMOUNT_ACCEPTED_NNLIST#WITH_TOTAL#SMALL_24$
Пример таблицы в чеке:
------------------------
НОМ| КОЛ| СУММА
------------------------
500| 2| 1 000 RUB
1000| 1| 1 000 RUB
5000| 2| 10 000 RUB
------------------------
ИТОГО: 12 000 RUB
ЛИСТОВ: 5
Настройка печати в чеке значения произвольного параметра¶
В раздел [HKEY_LOCAL_MACHINE\SOFTWARE\FS365\Vocabulary] можно добавить произвольный параметр с любым значением. Значение этого параметра можно будет напечатать в чеке с помощью макроса $system:REG_DICTIONARY_<параметр>$, где <параметр> – имя добавленного параметра. Например, в раздел [HKEY_LOCAL_MACHINE\SOFTWARE\FS365\Vocabulary] добавлен параметр RECEIPT_ORG_NAME, в котором указано название организации. Чтобы оно печаталось в чеке, в шаблон чека нужно добавить строку:
$system:REG_DICTIONARY_RECEIPT_ORG_NAME$
По согласованию с банком в кастомизацию в раздел [HKEY_LOCAL_MACHINE\SOFTWARE\FS365\Vocabulary] добавляются параметры RECEIPT_ORG_ADDRESS (адрес организации) и RECEIPT_ORG_NAME (название организации).
Настройка клиентских и служебных чеков¶
При работе на банкоматах производства Wincor Nixdorf могут использоваться макросы, поддерживаемые принтерами, установленными в банкомате, например #CPI15#, #CCT#. и т.д. Кодировки, поддерживаемые ПроАТМ, – Win1251, 866.
Таблицы перекодировки и собственные макросы для печати находятся в разделе [HKLM\Software\FS365\XFSAdapter\<Тип принтера (PRR, PRJ)>].
При установке ПО ПроАТМ в ветку реестра [HKLM\Software\FS365\XFSAdapter\<Тип принтера (PRR, PRJ)>] добавляется параметр InitString=REG_SZ(HEX), содержащий строку, передаваемую на требуемый принтер перед печатью каждого документа. Данная строка добавляется в начало каждого чека (или записи в бумажный журнал) после осуществления перекодировки в таблицу принтера. Строка может содержать макросы или строки в кодировке принтера. Например, макрос #CCT#. для перевода печати принтера (журнального или чекового) на русский язык.
При отсутствии загружаемых шрифтов в принтерах, их необходимо прогрузить в соответствии с инструкцией производителя принтера. Для УС, если чеки печатаются без переноса, необходимо выставить в реестре: [HKEY_LOCAL_MACHINE\SOFTWARE\XFS\PHYSICAL_SERVICES\PRR-UP389]; значение RnFlag – 1.
Печать на чеке его номера¶
Для того, чтобы в чеке печатался его уникальный номер, необходимо добавить макрос $system:UNIQUE_RECEIPT_NUMBER$ . Например:
#CR##LF#
УНИК.НО:$system:UNIQUE_RECEIPT_NUMBER@C,40$#CR##LF#
#CR##LF#