Сообщения без ответов | Активные темы Текущее время: Сб апр 27, 2024 5:13 am



Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 6 ] 
Штрих-ФР-К к текущему чеку прибавляет предыдущий чек 
Автор Сообщение
Новичок

Зарегистрирован: Пн окт 27, 2008 3:05 pm
Сообщения: 8
Сообщение Штрих-ФР-К к текущему чеку прибавляет предыдущий чек
Здравствуйте.

После нескольких лет стабильной работы начались проблемы.
Унас есть 2 типа оплаты: Наличный (SUMM1) и Безнал (SUMM2).
Если печатаем чек по безналу (SUMM2), чек печатается.
Начинаем печатать следующий чек по Наличным (SUMM1), но в добавок к наличным прибавляется сумма безнала от предыдущего чека (SUMM2). (и если печатать тоже самое наоборот)
В чеке пишется:
Итог 10 р
Наличными 10 р
Безнал (тут сумма от предыдущего чека по безналу например 10р) р
Сдача 10р

Программа написана на Delphi.
Вот пример кода который печатает чек:

Код:
procedure TForm1.Button18Click(Sender: TObject);
begin
    button18.Enabled := False;
    button19.Enabled := False;
    button20.Enabled := False;
    button21.Enabled := False;
    button22.Enabled := False;
try

   if (CheckBox2.Checked = True) then
    begin Driver.Price := StrToCurr(Label131.Caption); end //Цена
   else
    begin Driver.Price := StrToCurr(Label93.Caption); end; //Цена

    Driver.Quantity := StrToCurr(Label91.Caption); //Количество
    Driver.Department := 0;

    Driver.StringforPrinting := 'Проживание';
    Driver.Sale; { Продажа }
    Driver.StringforPrinting := '';
    if Driver.ResultCode<>0 then
    begin
        UpdateResult; exit;
    end;

   if (CheckBox2.Checked = True) then
    begin
        if ComboBox6.Text = 'Наличные' then
        begin Driver.Summ1 := StrToCurr(Label132.Caption); end //Наличные
        else if ComboBox6.Text = 'Русский стандарт' then
        begin Driver.Summ2 := StrToCurr(Label132.Caption); end; // Рус. стандарт
    end
   else
    begin
        if ComboBox6.Text = 'Наличные' then
        begin Driver.Summ1 := StrToCurr(Label95.Caption); end //Наличные
        else if ComboBox6.Text = 'Русский стандарт' then
        begin Driver.Summ2 := StrToCurr(Label95.Caption); end; // Рус. стандарт
    end;

    Driver.CloseCheck; { Закрытие чека }
    if Driver.ResultCode<>0 then
    begin
        UpdateResult; exit;
    end;

    Sleep(2000);
    UpdateResult;

  finally
    button18.Enabled := True;
    button19.Enabled := True;
    button20.Enabled := True;
    button21.Enabled := True;
    button22.Enabled := True;
  end;

end;


Почему так может происходит, ведь стабильно работало несколько лет?

Должны ли обнуляться Driver.Summ1 и Driver.Summ2 после Driver.CloseCheck ? Такое чувство что значения Driver.Summ1 или Driver.Summ2 остаются постоянно пока их не переопределиш.

Чтобы проверить, действительно ли это глюк программы, попробывал распечатать чек через тест драйвера.
Но в тесте драйвера тук придуманно что поля Сумма1, Сумма2, Сумма3, Сумма4 нельзя оставить пустыми, т.е. в них обязательно нужно поставить какоето число. Поэтому проверить глюк ли это программы или нет - неудалось.

Буду рад любым советам и предложениям.


Чт апр 21, 2011 8:21 am
Профиль
Постоянный участник
Аватара пользователя

Зарегистрирован: Чт мар 10, 2005 6:41 pm
Сообщения: 9908
Откуда: ЗАО "ШТРИХ-М", г. Москва
Сообщение Re: Штрих-ФР-К к текущему чеку прибавляет предыдущий чек
Цитата:
Должны ли обнуляться Driver.Summ1 и Driver.Summ2 после Driver.CloseCheck ? Такое чувство что значения Driver.Summ1 или Driver.Summ2 остаются постоянно пока их не переопределиш.

Перед каждым вызовом метода CloseCheck необходимо обнулять не используемые свойства, например:
//Оплата наличными:
Driver.Summ1 := 100;
Driver.Summ2 := 0;
Driver.Summ3 := 0;
Driver.Summ4 := 0;
Driver.Tax1 := 0;
Driver.Tax2 := 0;
Driver.Tax3 := 0;
Driver.Tax4 := 0;
Driver.DiscountOnCheck := 0;
Driver.StringforPrinting := '';
Driver.CloseCheck; {Закрытие чека}

//Оплата безналом
Driver.Summ1 := 0;
Driver.Summ2 := 100;
Driver.Summ3 := 0;
Driver.Summ4 := 0;
Driver.Tax1 := 0;
Driver.Tax2 := 0;
Driver.Tax3 := 0;
Driver.Tax4 := 0;
Driver.DiscountOnCheck := 0;
Driver.StringforPrinting := '';
Driver.CloseCheck; {Закрытие чека}

_________________
С уважением, Гонтарь Тимофей Владимирович
Инженер технической поддержки ЗАО "Штрих-М"
mailto: support@shtrih-m.ru
тел. (495) 787-60-96
ВНИМАНИЕ: Работает Официальный Интернет-Магазин от компании Штрих-М www.shels-m.ru


Чт апр 21, 2011 9:50 am
Профиль WWW
Новичок

Зарегистрирован: Пн окт 27, 2008 3:05 pm
Сообщения: 8
Сообщение Re: Штрих-ФР-К к текущему чеку прибавляет предыдущий чек
Timofey Gontar писал(а):
Перед каждым вызовом метода CloseCheck необходимо обнулять не используемые свойства


Так было всегда или в какойто определённой версии драйвера это стало необходимо (возвожно недавно обновляли драйвер) ?

Какже тогда это всё работало несколько лет (вчера чеки все за прошлые месяцы посмотрел, такой ошибки не наблюдалось) ?

Спасибо за подсказку, буду переделывать.


Чт апр 21, 2011 9:56 am
Профиль
Постоянный участник
Аватара пользователя

Зарегистрирован: Чт мар 10, 2005 6:41 pm
Сообщения: 9908
Откуда: ЗАО "ШТРИХ-М", г. Москва
Сообщение Re: Штрих-ФР-К к текущему чеку прибавляет предыдущий чек
Цитата:
Так было всегда или в какойто определённой версии драйвера это стало необходимо (возвожно недавно обновляли драйвер) ?

Так было всегда. Единственное, мне не особо понятно, почему данная ситуация не появлялась раньше...

_________________
С уважением, Гонтарь Тимофей Владимирович
Инженер технической поддержки ЗАО "Штрих-М"
mailto: support@shtrih-m.ru
тел. (495) 787-60-96
ВНИМАНИЕ: Работает Официальный Интернет-Магазин от компании Штрих-М www.shels-m.ru


Чт апр 21, 2011 10:02 am
Профиль WWW
Новичок

Зарегистрирован: Пн окт 27, 2008 3:05 pm
Сообщения: 8
Сообщение Re: Штрих-ФР-К к текущему чеку прибавляет предыдущий чек
Если честно мне тоже не очень понятно, поэтому и грешил на фискальный апарат. Я просто думал может есть какойто параметр (который случайно мог измениться) в настройках фискального аппарата, который отвечает за обнуление сумм после Driver.CloseCheck.

Спасибо.


Чт апр 21, 2011 10:05 am
Профиль
Постоянный участник
Аватара пользователя

Зарегистрирован: Чт мар 10, 2005 6:41 pm
Сообщения: 9908
Откуда: ЗАО "ШТРИХ-М", г. Москва
Сообщение Re: Штрих-ФР-К к текущему чеку прибавляет предыдущий чек
В том, то и дело, что таких параметров в ФРе нет.

_________________
С уважением, Гонтарь Тимофей Владимирович
Инженер технической поддержки ЗАО "Штрих-М"
mailto: support@shtrih-m.ru
тел. (495) 787-60-96
ВНИМАНИЕ: Работает Официальный Интернет-Магазин от компании Штрих-М www.shels-m.ru


Чт апр 21, 2011 12:51 pm
Профиль WWW
Показать сообщения за:  Поле сортировки  
Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.   [ Сообщений: 6 ] 

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF.
Русская поддержка phpBB