Сумма товарных позиций больше суммы оплат

1. Aero 33 12.11.24 02:50 Сейчас в теме
Добрый день.
Имеется конфигурация 2.2.13.12, доработанная.
Учет ведется по 2-м организациям, т.е. в РМК набивается товар по 2-м организациям, при оплате 1С их распределяет, и принимает оплаты сначала по одной, потом по другой.
Используются 2 ККТ ШтрихМ (одна подключена по виртуальному COM-порту, другая по RNDIS).

Периодически возникает ошибка "Сумма товарных позиций больше суммы оплат" во время оплаты (см. скриншот). Я дополнительно добавил вывод сравниваемых сумм, где видно, что 1С не видит полученную оплату.
Данную ошибку не получается воспроизвести. Т.е. если следом набить тот же товар, сделать те же самые действия, ошибок не будет. Ошибка плавающая. Бывает несколько раз в день. А иногда неделю может не быть, а потом появится.

У нас 2 магазина. Данная ошибка появлялась всегда только на одном. Но сегодня 1-й раз появилась на другом магазине.
На другом периодически появляется другая, тоже плавающая, но может быть связь. Там выходит сообщение "FFFFFF8h, Out of memory" (если в этот момент проверить подключение через тест драйвера, то связь есть, помогает только перезапуск 1С)

Происходит это так.
Когда товары в РМК набиты, начинается приём оплат. В основном оплачивают картами, поэтому опишу ситуацию при оплате картой. Сначала покупатель дважды платит картой (сначала по одной организации оплата, потом по другой). Распечатываются 2 слип-чека. Далее должны распечататься уже 2 кассовых чека. И вот тут происходит ошибка "Сумма товарных позиций больше суммы оплат". Оплаты по факту прошли, 2 слипа есть, а кассовых чеков нет.
В 1С сохраняется только чек по 1-й оплате.
Кассиру приходится зайти в список чеков, найти этот документ, и распечатать из него вручную кассовый чек. А 2-й чек приходится набивать заново вручную в документе ЧекККМ, а после распечатать кассовый чек из него же.

Как будто при печати уже кассового чека происходит какая-та ошибка (никаких сообщений), данные по 2-му чеку куда-то исчезают (хотя при оплате чеки должны записываться в базу, но 2-го чек нет, как не ищи), и получаем то, что получаем.

Уже есть топик по такой же ошибке - https://forum.infostart.ru/forum81/topic228395/, но решения нет до сих пор.
Прикрепленные файлы:
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user-z99999 71 12.11.24 09:14 Сейчас в теме
(1)
1) Найди в программе эту строку в коде.
"Сумма товарных позиций больше суммы оплат"

2) Посмотри, что выше неё, код. (по условиям, как попасть на эту строку)

3) Напиши свой лог (все параметры, структуры, ТЗ, массивы).
ЗначениеВСтрокуВнутр
ЗначениеИзСтрокиВнутр
Всё куда-то сохраняй. Хочешь, в журнал регистрации, хочешь в файл.

4) Когда возникнет ошибка, ты увидишь, какие параметры какое значение имеют.

У тебя бэкапы есть?
1) возникла ошибка, ура
2) делаем копию базы на время, чуть раньше на 2 минуты (умеешь восстанавливать бэкапы на любое время )

RESTORE LOG AdventureWorks  
   FROM AdventureWorksBackups  
   WITH FILE=4, NORECOVERY, STOPAT = 'Apr 15, 2025 13:18 AM';  


3) бежим по точкам остановки, в отладке
6. Aero 33 15.11.24 02:54 Сейчас в теме
(2) Обработка данной ошибки (проверка перед печатью чека) происходит в общем модуле ФорматноЛогическийКонтрольВызовСервера в процедуре ВыполненаПроверкаОбязательностиИПравильностиЗаполненияТэгов(Параметры, ...).
В нее уже переданы данные для печати. Получается ТЗ Параметры.ТаблицаОплат пустая.
Ошибка невоспроизводима, т.е. сейчас таблица пустая, а при точно таком же чеке (товары и пр.) таблица заполнена.

Ошибка скорее всего возникает где-то в форме РМК после принятия оплат.
Сомневаюсь, что сохранение данных может помочь, но возьму на заметку, может сделаю.

С бэкапом не получится. База файловая, 1 компьютер на магазине, поток покупателей + сами бэкапы на магазинах не делаются, только на сервере (у нас РИБ - сервер в офисе + 2 магазина).
8. user-z99999 71 15.11.24 09:30 Сейчас в теме
(6)
Сделать расширение и повесить его на программу 1с,
которое будет асинхронно (или синхронно) писать в файл текстовую информацию,
отладочную, какую мы хотим собрать.
Можно, понять, это на любой номенклатуре или на некоторых падает.

Запустим Wireshark для адаптера RnDIS и посмотрим пакеты (ссылку в личку кинул)
Это уже анализ сетевого трафика, нужно быть админом и разбираться в этом.

Можно ли включить отладочную информацию для драйвера?
Может куда-то логи пишутся.
3. Vlan 36 12.11.24 09:24 Сейчас в теме
(1) Я бы посмотрел еще на время запуска регламентных заданий. Нет ли связи с ошибкой?
4. vladimir_korshun 87 12.11.24 09:28 Сейчас в теме
(1) Проверить, установить правильную версию драйвера РМК.
Можно ли попробовать установить драйвер другой версии (старее, новее чем сейчас)?

Проверить провода, может контакт отходит.
Электричество? бесперебойник поставить
интернет, пропал и появился? протестировать
5. user1433617 12.11.24 17:12 Сейчас в теме
Версия прошивки на ккт какая?
Версия драйвера?
7. Aero 33 15.11.24 02:56 Сейчас в теме
(5) 1-я организация:
Версия ПО : C.1
Сборка ПО : 2693
Дата ПО : 15.02.2019

2-я организация:
Версия ПО : C.1
Сборка ПО : 19018
Дата ПО : 13.02.2020

1С (обработка обслуживания)
Версия драйвера 4.14.0.792 (та, что установлена)
Штрих-М: Драйвер ККТ с передачей данных в ОФД v2.5
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот