[ОТВЕТИТЬ]
Опции темы
07.01.2015 19:15  
VitorJ
Озадачился следующим вопросом.
Есть акционный товар, скидка на который не распространяется. Соответственно в конце чека мы получаем "Скидка такая, % печатается фактический к примеру 3,89%, сумма возможная скидка 5%"
Подскажите, возможно ли привести эту строку к такому виду
Скидка "Стандарт" 5% сумма скидки 5 руб.
Ковыряю скрипт на демо стенде, пока чтот не выходит!
Никто не заморачивался?
УКМ4 60 sp 4
 
08.01.2015 04:25  
Eugin_S
Покажи секцию function print_hard_subtotal(__hard_subtotal, __print_data) из receipt.lua
 
08.01.2015 06:46  
VitorJ
Код:
function print_hard_subtotal(__hard_subtotal, __print_data)
    if compresed_print == true then
      loc_item_table = {};
      loc_item_keys_table = {};
      local normal_items = __hard_subtotal.receipt.items:leavenormal();
      for j = 0, normal_items:size() - 1 do
          local i = get_table_from_item(normal_items:at(j));
          local key = i.item .. "_" .. tostring(i.price);
          if loc_item_table[key] == nil then
            table.insert(loc_item_keys_table,key);
            loc_item_table[key] = i;
          else
            loc_item_table[key].totalquantity = loc_item_table[key].totalquantity + i.totalquantity;
            loc_item_table[key].total = loc_item_table[key].total + i.total;

             for idk, idv in pairs(i.discounts) do
                 if loc_item_table[key].discounts[idk] == nil then
                     loc_item_table[key].discounts[idk] = {};
                     loc_item_table[key].discounts[idk].name = idv.name;
                     loc_item_table[key].discounts[idk].increment = idv.increment;
                 else
                     loc_item_table[key].discounts[idk].increment = loc_item_table[key].discounts[idk].increment + idv.increment;
                 end
             end

             for idk, idv in pairs(i.tax_item) do
                 if loc_item_table[key].tax_item[idk] == nil then
                     loc_item_table[key].tax_item[idk] = {};
                     loc_item_table[key].tax_item[idk].name = idv.name;
                     loc_item_table[key].tax_item[idk].percent = idv.name;
                     loc_item_table[key].tax_item[idk].amount = idv.amount;
                 else
                     loc_item_table[key].tax_item[idk].amount = loc_item_table[key].tax_item[idk].amount + idv.amount;
                 end
             end
          end
       end
--сортировка таблицей по ключу
       for i,v in ipairs(loc_item_keys_table) do
          print_item_to_printer(loc_item_table[v], ukm.printer_type_master(), __print_data);
       end
       loc_item_keys_table = {};
       loc_item_table = {};
    end
 
10.01.2015 00:41  
vdm
Вопрос в чем, нужно выбросить фактический процент скидки и на его место поставить возможный?
Тогда в чем проблема, в receipt.lua есть текст "возможная скидка"? Там и копай.
 
 
Опции темы



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

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