[ОТВЕТИТЬ]
Опции темы
01.06.2012 07:44  
Андройд
Цель: Печать произвольной информации на кассовой ленте сразу после чека, с частичной отрезкой чека.
В параметрах кассы сделал:
1) В программировании создал новый скрипт test.lua с содержанием:
local printer = ukm.get_printer(ukm.printer_type_master());
if printer then
local text = "";
local width = printer:get_width();
text = text .. ukm.center("Произвольный текст") .. "\n";
__print_data:add(text, ukm.printer_type_master());
end

2) В параметрах касс выставил печать документа после чека: test.lua

Скрипт слизал с discount_coupon.lua...
В итоге после чека печатается шапка чека и все.
Help! :)
 
01.06.2012 12:26  
vdm
В register.lua скрипт прописан?
В ukm.center() параметры верные?
 
01.06.2012 14:01  
Андройд
В register.lua скрипт не прописан, где его там прописывать?:)
В ukm.center() ..."Произвольный текст" как я понимаю должен написатья:)
 
01.06.2012 14:02  
Mtirt
Цитата:
Сообщение от Андройд
В ukm.center() ..."Произвольный текст" как я понимаю должен написатья:)
Если в строчку поместится...
А если нет - надо переносить.
 
01.06.2012 21:01  
vdm
Цитата:
Сообщение от Андройд
В register.lua скрипт не прописан, где его там прописывать?:)
Без require_once() доп. скрипты для укм неживые.

Цитата:
В ukm.center() ..."Произвольный текст" как я понимаю должен написатья:)
Как минимум ошибка отсутствия требуемых center параметров будет.
Для начала оставь там чистый текст без функций.
Во вторых, наверняка ругнется на неизвестное __print_data.

Впрочем я и не знаю, по каким правилам данный скрипт оформляться должен.
Описания или примера не нашел.
 
09.06.2012 13:21  
Павел Сосновских
Цитата:
Сообщение от Андройд
local printer = ukm.get_printer(ukm.printer_type_master());
if printer then
local text = "";
local width = printer:get_width();
text = text .. ukm.center("Произвольный текст") .. "\n";
__print_data:add(text, ukm.printer_type_master());
end
Рабочий код выглядит так:

test.lua (самостоятельно созданный скрипт)
local printer = ukm.get_printer(ukm.printer_type_master());
if printer then
local text = "";
local width = printer:get_width();
text = text .. ukm.center("Произвольный текст",width," ") .. "\n";
end

return text;

добавить в register.lua строку:
require_once("test.lua")

в параметрах указать:
Документ при завершении чека - test.lua
 
"Спасибо" Павел Сосновских от:
22.01.2016 14:19  
[+kliN+]
Извините, что пишу, спустя столько времени, в эту тему со своим вопросом, но тема к нему очень подходит
с небольшим уточнением, нужно печатать произвольный текст сразу же после шапки чека.
в конце чека получается (строчка "СПАСИБО ЗА ПАКУПКУ"), а вот чтоб после шапки печатался текст. не знаю куда его пристроить в скрипте receipt.lua.
помогите пожалуйста
 
22.01.2016 16:14  
Павел Сосновских
Совсем сразу после шапки не получится. После шапки чека идут всякие заводские/регистрационный номера, инн, эклз, и т.д.
В случае с СПшником дальше слова "Чек на продажу" или аналогичные. У других ФРов в большинстве случаев что-то подобное.
Все это "зашито" в ФР и не изменить.
Следующее, что там идет это УКМная нумерация чека и вот сюда можно что-то вставлять.
За это что-то отвечает функция function print_receipt_open в receipt.lua
Не раз говорил, но повторить не будет лишним, "на живую" receipt.lua лучше не трогать. Только если точно знаешь, что делаешь.
Ошибки в синтаксисе мгновенно кладут все кассы, что ниже этого сервера(в случае с СГО кладут всю сеть сразу)
Лучше пишем что-то такое на тестовом стенде или оставляем одну кассу, на которой не будут на этот период работать, для тестов,
а остальные либо от сети отключаем, либо еще как-то портим им связь с сервером

Последний раз редактировалось Павел Сосновских; 22.01.2016 в 16:19.
 
"Спасибо" Павел Сосновских от:
22.01.2016 16:43  
student
Цитата:
Сообщение от [+kliN+]
нужно печатать произвольный текст сразу же после шапки чека.
для случая "стандартной" шапки чека - т.е. обычные 2-е строки - можно для варианта когда текст не будет постоянно меняться записать нужную инфу в 3-ю и 4-ю строки "клише предприятия" самого фрк через фртулс, если конечно минимум 2-х строк для сп101\402 по 80 символов хватит :)
для фрк др производителей даже больше 2-х строк воткнуть возможно...
 
22.01.2016 20:59  
Павел Сосновских
с другими только не забыть автоформирование заголовка из укм отключить
 
"Спасибо" Павел Сосновских от:
 


Опции темы



Часовой пояс GMT +3, время: 12:59.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.