Имя: Пароль:
1C
1С v8
УТ11.4 2 раза чек пробивает
0 GhostIrviWolf
 
19.10.18
02:45
Дотянули клиенту 1С до 11.4.5 версии. База файловая, работают 2 человека (оператор и кассир), работают на сервере через RDP. Всё нормально, ошибок никаких не было. Однако, всплыла такая трабла. Из РМК, кассир пробивает чек. Чек на фискальнике пробивается. А в 1С пишет ошибку блокировки транзакции или документа (простите, не могу дословный текст привести, не сохранил). В результате, чек остается на экране как не пробитый. Кассир пробивает заново, ОПЯТЬ выходит чек из ФР и чек нормально записывается в 1С. В результате мы имеем 2 одинаковых пробитых чека на ФР (задвоение выручки), а в 1С ошибку при открытие чеков "Поле "Номер" не уникально" (как я понял при построения списка, 1 одинаковый чек, с 2мя номерами "Номер чека ККТ")
Ну и естественно консолью запросов ловим и ищем чек ккм и т.д. А потом через тест драйвера на аппарате делаем возврат лишней суммы.
Проблема выходит у 2х клиентов. Сама же проблема возникает 2-3 раза на неделе, т.е. не получается её специально сделать и разобраться. В старой УТ 11.4.4 такой проблемы не было. Поиск не дал ничего путного.
Может кто сталкивался с такой проблемой и как решили?
1 Галахад
 
гуру
19.10.18
08:02
Всего-то. Надо исключить возникновение "блокировки транзакции".
2 yzimin
 
19.10.18
09:09
Начните с ТиИ. Смотрите, что у вас там доработано.

сервер мини не хочется советовать ради 2-х юзеров, но 100% поможет.
3 GhostIrviWolf
 
19.10.18
09:19
(1) Я так понимаю, так как проблема не постоянная, то копать и искать при помощи журнала, так?

(2) ТиС чист. Что за сервер мини? В смысле перевести на скуль?
4 Сияющий в темноте
 
19.10.18
09:29
Если через Рдп теряется связь,то 1с никак не может узнать о том,что чек пробит,и ждет таймаута обмена с кассой,и,видимо,там еще в коде что то криво по этому поводу,раз он свою же транзакцию блокирует.

Вообще то,если в чеке получили номер чекп от фискального регистратора,то чек уже пробит,и повторно его пробивать ни е чему,то есть в код нужно дописывать проверку.

И,в блокировке транзакции минисервер ничем не поможет,кроме как узнать,какая запись заблокирована.
5 GhostIrviWolf
 
19.10.18
10:18
(4) Дописывать проверку не вариант. Конфиги то типовые, с поддержки не снятые. Это из разряда "Сделать танк и допилить напильником до самолета"
Насчет теряют связь, но ведь до этого около года работали, не было такой проблемы. А вот обновили, и сюрприз!
6 Галахад
 
гуру
19.10.18
10:27
(3) Описание проблемы:
1С отправил на ККМ команду.
ККМ отправил в ответ номер чека.
1С заполняет реквизит "номер чека" и
- должна записать документ
- создать новый документ и очистить форму
Поскольку возникает "блокировки транзакции", то документ не записывается, новый не создается и форма не очищается.

Решение проблемы:
Вариант 1. Не допускать "блокировки транзакции"
Вариант 2. Ставить после получения номера из ККМ, делать форму не доступной для редактирования.
7 piter3
 
19.10.18
10:28
(6)он не хочет править конфу
8 Галахад
 
гуру
19.10.18
11:04
(7) Уважаю его выбор. Программист должен быть ленив.
9 yzimin
 
19.10.18
11:16
(4) почему клиент-сервер не поможет? у него другие принципы блокировки таблиц и записей в сравнении с файловой
10 GhostIrviWolf
 
19.10.18
11:42
(6) Я понимаю что проблема в блокировке. Вот только я не могу понять, почему она происходит и как бы обнаружить что блокирует транзакцию.
(8) Я пока не программист, а мастер универсал. В стиле знать должен все и ничего. Поэтому в коде я скорее дров наломаю, да еще и с поддержки сниму. Я конечно понимаю, что конфа типовая, не гарантирует работу "из коробки", на практике уже понятно. Но надежда то, всегда есть.
2 + 2 = 3.9999999999999999999999999999999...