ТМС:Кассир:Классы:Barcode — различия между версиями

Материал из wiki.standart-n.ru
Перейти к: навигация, поиск
(Новая страница: «==Свойства== Text - текст отсканированного штрихкода Kind RW - тип штрихкода:…»)
 
Строка 8: Строка 8:
 
==Методы==
 
==Методы==
  
====RecalcDiscount====
+
===RecalcDiscount===
 
  <nowiki>
 
  <nowiki>
 
   RecalcDiscount - пересчет скидки по очереди чеков в случае изменения процента скидки (PERCENT)
 
   RecalcDiscount - пересчет скидки по очереди чеков в случае изменения процента скидки (PERCENT)
Строка 37: Строка 37:
 
  </nowiki>
 
  </nowiki>
  
====ApplyDiscount====
+
===ApplyDiscount===
 
  <nowiki>
 
  <nowiki>
 
   ApplyDiscount - применить дисконтную карту к одной или всем позициям очереди чеков
 
   ApplyDiscount - применить дисконтную карту к одной или всем позициям очереди чеков

Версия 12:16, 1 октября 2014

Свойства

 Text                  - текст отсканированного штрихкода
 Kind RW               - тип штрихкода: bkUnknown (неизвестно), bkGoods (товар), bkLPGoods (весовой товар),
                         bkLocalDiscount (локальная скидка), bkGlobalDiscount (глобальная скидка)
 Percent RW            - процент скидки (если KIND = bkLocalDiscount или bkGlobalDiscount)
 CardSumm              - сумма накоплений по дисконтной карте (если KIND = bkGlobalDiscount)

Методы

RecalcDiscount

  RecalcDiscount	- пересчет скидки по очереди чеков в случае изменения процента скидки (PERCENT)
 

Пример:

  var s: string;
  begin
    s := Barcode.Text + #10;
    case Barcode.Kind of
      bkLocalDiscount: s := s + 'локальная скидка ' + FloatToStr(Barcode.Percent) + '%';
      bkGlobalDiscount: s := s + 'глобальная скидка ' + FloatToStr(Barcode.Percent) + '%; ' + FloatToStr(Barcode.CardSumm);
      bkLPGoods: s := s + 'весовой товар';
      bkGoods: s := s + 'товар';
    else
      s := s + 'непонятно, что за штрихкод';
    end; 
    ShowMessage(s);

    if (Barcode.Kind = bkLocalDiscount) or (Barcode.Kind = bkGlobalDiscount) then
      begin
        Barcode.Percent := -20;
        Barcode.RecalcDiscount;
      end;
  end;
 

ApplyDiscount

  ApplyDiscount		- применить дисконтную карту к одной или всем позициям очереди чеков
    sDiscountBarcode	- штрихкод дисконтной карты
    iPartID		- PART_ID позиции, к которой применяется карта (0 - применить ко всем позициям)
 

Пример:

  ChequeList.Items[0].P_Index := 0;
  Barcode.ApplyDiscount('000000000314', ChequeList.Items[0].P_ID);