Имя: Пароль:
1C
1С v8
Атол 30ф аннулирует чеки. Неверная цена (сумма)
0 pto930
 
11.06.21
12:23
Здравствуйте, коллеги!
проблема: аппарат регулярно аннулирует чеки из Приходников, Расходников, Оплат картой (на основании Заказа покупателя). если у заказа Структура подчиненности сложная (возраты, корректировки), то шанс аннулирования выше.

что имеем: УТ10.3.67.3 в режиме х86 есть дописки
1С:Предприятие 8.3 (8.3.17.1851) на RDP сервере
Атол 30ф с драйвером 10.8.1.0 х86 (на сервере и у юзеров). прошивки 5.7.10-20
обработка http://forum.infostart.ru/forum86/topic251045/message2584696/#message2584696 стандартная + дописан сно.патент + поддержка 10.8
на другом месте через обработку https://infostart.ru/public/956348/ веб-сервис Атол в.1.2.7 тоже иногда аннулирует (естественно пробовал печатать чеки из разных документов, т.к. кассы разные)

полагаю, проблема из-за разности более 1 копейки (кусок лога fptr10* через веб-сервис которая):
[FiscalPrinter] > LIBFPTR_PARAM_PRICE (65632) = 330.43
[FiscalPrinter] > LIBFPTR_PARAM_QUANTITY (65633) = 1
[FiscalPrinter] > LIBFPTR_PARAM_POSITION_SUM (65634) = 330.45


(кусок лога fptr10* через RPC-сервис атоловское удалённое подключение):
2021.06.02 09:58:00.090 T:00002200 INFO  [FiscalPrinter] send data { "m" : "libfptr_process_json", "w" : false, "p" : [ { "t" : 3, "s" : 0, "n" : 65645, "np" : false, "u" : false, "v" : "{\"agentInfo\":{\"moneyTransferOperator\":null,\"payingAgent\":null,\"receivePaymentsOperator\":null},\"clientInfo\":{\"name\":\"Частное лицо \"},\"companyInfo\":{},\"electronically\":false,\"ignoreNonFiscalPrintErrors\":true,\"items\":[{\"additionalAttributePrint\":true,\"agentInfo\":{\"moneyTransferOperator\":null,\"payingAgent\":null,\"receivePaymentsOperator\":null},\"amount\":740.35,\"department\":0,\"infoDiscountAmount\":0.0,\"measurementUnit\":\"Платеж\",\"name\":\"Дубай Декор 5 светло-бежевый 250х500 вывод шт\",\"paymentMethod\":\"prepayment\",\"paymentObject\":\"10\",\"price\":740.35,\"quantity\":1.0,\"tax\":{\"sum\":0.0,\"type\":\"none\"},\"type\":\"position\"},{\"additionalAttributePrint\":true,\"agentInfo\":{\"moneyTransferOperator\":null,\"payingAgent\":null,\"receivePaymentsOperator\":null},\"amount\":5442.53,\"department\":0,\"infoDiscountAmount\":0.0,\"measurementUnit\":\"Платеж\",\"name\":\"Дубай плитка обл. светло-бежевая 250х500 шт\",\"paymentMethod\":\"prepayment\",\"paymentObject\":\"10\",\"price\":5442.55,\"quantity\":1.0,\"tax\":{\"sum\":0.0,\"type\":\"none\"},\"type\":\"position\"},{\"additionalAttributePrint\":true,\"agentInfo\":{\"moneyTransferOperator\":null,\"payingAgent\":null,\"receivePaymentsOperator\":null},.............
..............номенклатура с норм ценами/суммами................
2021.06.02 09:58:00.970 T:00002200 INFO  [FiscalPrinter] recv header sign=[B65D9C62] deviceID=[6C05ECC16B346195B2F4E69740A09386C129D88A] id=0932 type=[RESPONSE] len=114
2021.06.02 09:58:00.970 T:00002200 INFO  [FiscalPrinter] recv data { "e" : { "c" : 16, "d" : "Неверная цена (сумма)" }, "p" : [ { "t" : 3, "v" : "", "n" : 65645, "s" : 0 } ], "f" : null }
2021.06.02 09:58:00.970 T:00002200 INFO  [FiscalPrinter] < LIBFPTR_PARAM_JSON_DATA (65645) = ""
2021.06.02 09:58:00.970 T:00002200 ERROR [FiscalPrinter] Объекту 0x1E51EEF8 присвоен код ошибки 16 [Неверная цена (сумма)]

переключение ФЛК не помогает. наверное, изза количества равного единице (т.к. предоплата)

помогите, пожалуйста.
1 neomarat
 
11.06.21
12:31
Была такая херня в одном из релизов - если били сумму больше, чем по чеку - например товар стоит 200 р, вбили 500 - документ написал сдача 300, то чек аннулировался - он почему то толкал в кассу 500.
Причем было это при наложении каких-то условий(т.е. в РМК не проявлялось, а только в чеке введенном на основании). В итоге подкрутил расчет суммы перед отправкой кассе и все заработало.
2 pto930
 
11.06.21
12:43
(1) как подкрутили?
3 neomarat
 
11.06.21
12:47
Да тупо посмотрел какая сумма улетает в кассу, понял что не та, и открутил назад вызовы процедур. Понял что при отправке пихает не ту сумму. Короче отладчик рулит. Тем более это простая УТ10.
4 pto930
 
11.06.21
13:45
увы, с отладчиком слабо знаком. хочу научиться, не знаю как.
пробовал проследить через точку останова, что делается после нажатия кнопки "пробить" чек, пошагал по проверкам кассы на смены и пробитие, а потом хлоп и чек вышел..
как поймать "LIBFPTR_PARAM_PRICE" итп?
5 pto930
 
24.06.21
15:47
на инфостарте подсказали:
"передавайте в ККТ
Цена = Сумма/ количество без округления . ККТ сама округлит как надо"
помогло