04.04.2018 09:59
Velik
 
Доброго дня. На днях в одной из сетей встретил интересный формат чека, с точки зрения экономии кассовой ленты. В нем - печать налогов обозначена как А -10% НДС, В - 18% НДС и после цены в каждой строке указана всего 1 буква "А" или "В", а в футере расписано - что А-10% - столько-то рублей, И-18% столько-то рублей. Как такое возможно реализовать на УКМ? Ниже приведу картинку - что хотелось бы увидеть в итоге ....
PS: Там еще несколько вопросов по оптимизации чека... буду очень благодарен за ответы и возможные пути решения возникших проблем
PPS Можно ли переместить/уменьшить QR -?

УКМ версия 78sp2
СП402Ф прошивка 008.17.220




(0,23Мб)
04.04.2018 12:29
LightStep
 
Для переноса налогов придется редактировать receipt.lua, секцию print_SP_KKT_item и включать режим печати свободной строкой. Вариант с шифрованием налогов под "А" или "В" у меня не получился. получилось немного по другому. Уменьшить штрихкод можно включив в настройках ФР режим сжато2. Переместить можно только на СП802Ф, будет печататься совместно с текстом.
04.04.2018 12:33
sh00r00p
 
Сайты чеков у вас примечательные. Прям-таки разные)
04.04.2018 13:20
Velik
 
Цитата:
LightStep Для переноса налогов придется редактировать receipt.lua, секцию print_SP_KKT_item и включать режим печати свободной строкой. Вариант с шифрованием налогов под "А" или "В" у меня не получился. получилось немного по другому. Уменьшить штрихкод можно включив в настройках ФР режим сжато2. Переместить можно только на СП802Ф, будет печататься совместно с текстом.
Спасибо большое, буду значит ковырять эту секцию....но если не жалко и есть возможность выложить Ваш вариант print_SP_KKT_item буду примного благодарен! А то боюсь я этих lua .... А на 802 с какой прошивкой позволяет печатать QR рядом с текстом ?
04.04.2018 13:43
LightStep
 
Начиная с версии 008.19
Режим печати QR кода настраивается параметром ККТ “MACRO:FDDDesign:PrintQRWithText”:
0 – (значение по умолчанию) печатать QR код и текст последовательно в одну колонку
1 – печатать QR код и текст параллельно в 2 колонки

Мне не жалко, пользуйся. Только предварительно проверяй все на тестовом сервере. А то одним неверным движение положишь все кассы на всех магазинах. Будет неприятно.


Цитата:
function print_SP_KKT_item(__item, __print_data)
local printer_type = ukm.printer_type_master();
local printer = ukm.get_printer(printer_type);
if printer then
local text = "";
local width = printer:get_width();

local item_total = __item.total;
local price_with_discount = __item.price;

local discount_count = __item.discounts:size();
if discount_count > 0 then
local discount_total = ukm.currency(0);
for i = 0, discount_count - 1 do
local discount = __item.discounts:at(i);
if discount.increment ~= ukm.currency(0) then
discount_total = discount_total - discount.increment;
end
end

if discount_total:sign() ~= 0 then
item_total = item_total - discount_total;
price_with_discount = ukm.currency((__item.total - discount_total) / __item.totalquantity);
end
end

local itemname = ukm.insert_delimiters(__item.name, "\n", width - 1);
local itemprice = ukm.leftpad(tostring(__item.totalquantity),7," ") .. " " .. ukm.leftpad(tostring(price_with_discount),8," ") .. " " .. ukm.leftpad(tostring(item_total),10," ");
local tax_found = false;
local taxes = ukm.taxes(__item.receipt);
taxes:create(__item);
for i = 0, taxes.itemtaxes:size() - 1 do
local tax = taxes.itemtaxes:at(i);
text = " " .. text .. tax.name .. tax.percent;
tax_found = true;
end

if not tax_found and (__tax_system == 1) then
text = text .. " " .. " БезНДС";
end


if ukm.str_len(itemname .. " " .. itemprice) <= width-7 then
text = ukm.adjustment(itemname, itemprice, width-7, " ") .. text .. "\n";
else
text = " " .. itemprice .. text;
text = ukm.left(itemname, width - 8 - ukm.str_len(itemprice)) .. text .. "\n";
end


__print_data:add(text, printer_type);
end
end
04.04.2018 14:02
Velik
 
Цитата:
LightStep Мне не жалко, пользуйся. Только предварительно проверяй все на тестовом сервере. А то одним неверным движение положишь все кассы на всех магазинах. Будет неприятно.
СПАСИБО!!!!!!!!! Буду пробовать !
05.04.2018 09:02
Velik
 
При режиме свободной строкой, по Вашему lua - ругается - чего то не хватает ему, я так понимаю не хватает строки со скидкой



(0,13Мб)
05.04.2018 09:32
LightStep
 
Возможно в вашем receipt.lua есть еще какие то изменения. Верните родную часть скрипта и проверьте печать в режиме свободной строки. Есть еще момент. В версии 78сп2 не поддерживается группировка для печати свободной строкой, нужно проверить: настройка магазина - описание - параметры. Выставить тип печати чека: после расчета сжато. У меня на тестовом стенде 78сп2 с прошивкой 008.20 все работает.
05.04.2018 09:55
Velik
 
Цитата:
LightStep Возможно в вашем receipt.lua есть еще какие то изменения. Верните родную часть скрипта и проверьте печать в режиме свободной строки. Есть еще момент. В версии 78сп2 не поддерживается группировка для печати свободной строкой, нужно проверить: настройка магазина - описание - параметры. Выставить тип печати чека: после расчета сжато. У меня на тестовом стенде 78сп2 с прошивкой 008.20 все работает.
Не - именно часть print_SP_KKT_item была родной и не трогалась. Выставил настройки как Вы описали. та же самая ошибка.ФР прошил на 009.0.353.... изменений нет (((
05.04.2018 10:22
Velik
 
Печатает скрипт свободной строкой - загвоздка была в чем: я включал Свободную строку на ФР (ставил галочку в Настройках принтера) , а начал печатать без ошибки после того, как включил свободную строку на УКМ - параметрах фискальника в Конфигурационной группе ....

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.