Главная категория > Инкотекс

Миллиарды в чеке

<< < (7/9) > >>

RomanPrg:

--- Цитата: Revers_M от 21/09/2021 09:29:44 ---Меркурий не смог "в разрядность".
--- Конец цитаты ---

Да,  здесь всё точно подмечено

Немного проясню.

Для регистра цены в ККТ заложена переменная в ОЗУ int32_t  price  (−2 147 483 648 до 2 147 483 647 )  соответственно это сумма в копейках ( −21 474 836.48 до 21 474 836.47)

Далее эта переменная преобразуется в  int64_t

int64_t sum = 0

sum +=  price   (счётчик сумм)

Так как 25 миллионов рублей выходят за грань, то преобразования идут неправильно

price = 0x 97 4A ED 30

sum = 0x FF FF FF FF 97 4A ED 30

Эта сумма и распечатывает на ленте при оформлении чека

-1 756 697 296


Запись итога по чеку в ФН идёт через команду 16h – «сформировать чек» разрядность итога в команде 5 байт

Поэтому итог по чеку в ФН (тег 1020) обрезается до  5 байт  0x FF 974A ED30 (1 097 754 930 480)

В тег 1216 «ПОСЛЕДУЮЩАЯ ОПЛАТА (КРЕДИТ)» в ФН записывается через TLV структуру по команде 7h -  здесь значение обрезается по максимальной разрядности тега до 6 байт  0x FF FF 974A ED30 (281 473 220 013 360)

Поэтому при распечатке чека из буфера ФН и получаем эти цифры на ленте (эти суммы записаны в ФН и переданы в ОФД)


При ручном вводе в кассовый режим у нас специально стаяла защита о невозможности физического ввода подобных сумм (не предполагалась продажа квартир на розничных ККТ :) ).

Потом новые товарищи видимо прилепили свой режим ФР, но не учли особенности работы кассового ядра и защиту не поставили или не привели регистры к нужным разрядам в кассовом ядре.

zax:

--- Цитата: RomanPrg от 22/09/2021 16:00:17 ---В тег 1216 «ПОСЛЕДУЮЩАЯ ОПЛАТА (КРЕДИТ)» в ФН записывается через TLV структуру по команде 7h -  здесь значение обрезается по максимальной разрядности тега до 6 байт  0x FF FF 974A ED30 (281 473 220 013 360)

Поэтому при распечатке чека из буфера ФН и получаем эти цифры на ленте (эти суммы записаны в ФН и переданы в ОФД)

--- Конец цитаты ---
Если эта сумма была бы записана в ФН как сумма чека,то этот чек проверялся бы приложением ФНС,а этого нет и результат чек не корректен.....а записывается сумма итога чека 10977549304.80......и ещё не надо советовать делать возвраты на на 25 лямов это не верное действие.

RomanPrg:

--- Цитата: zax от 22/09/2021 18:00:14 ---....и ещё не надо советовать делать возвраты на на 25 лямов это не верное действие.

--- Конец цитаты ---

А это не инструкция к действию.

Чек может и некорректный (сумма в позиции не будет совпадать с суммой  итога), но как видно на распечатке, квитанция подтверждения есть, ОФД чек слопал.
А как там далее гросситоги ведут ОФД и ФНС это естественно нужно уточнять.
 

okas:

--- Цитата: RomanPrg от 22/09/2021 18:23:53 ---ОФД чек слопал.
--- Конец цитаты ---
Слопал, но прислал отчет по ошибкам. См. Ответ #19

Torquader:
Детская ошибка - использование целых чисел со знаком там, где знака быть не должно.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница

Произошла ошибка благодарности
Думаю...
Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 
Перейти к полной версии