Вносимая безналичной оплатой сумма больше суммы чека

1. Aftee 03.05.17 11:02 Сейчас в теме
Добрый день!
Настроена работа программного продукта 1С:Розница 8 и ККТ с передачей данных в ОФД Штрих-М Ф-01. Наблюдается следующая проблема:

В информационной базе через РМК совершается продажа товара. Указывается ручная скидка. Производится оплата товара, с последующим пробитием чека.

Если оплата происходит по платежной карте, то в момент попытки печати чека появляется ошибка: "4Dh. Вносимая безналичной оплатой сумма больше суммы чека"

Сумма, указанная в распечатанном чеке из банковского терминала, полностью соответствует сумме чека в информационной базе.

Без указания ручной скидки ошибка не наблюдается и чек печатается.

В чем может быть проблема? Драйвера переустанавливал, кеш чистил, релиз актуальный, прошивки на ккт новее нету.

P.S. Со старым ФР такой проблемы не было.
+
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. olegmedvedev 65 03.05.17 11:09 Сейчас в теме
(1)
Вносимая безналичной оплатой сумма больше суммы чека

А вносите какую сумму - уже со скидкой?
+
3. Aftee 03.05.17 11:14 Сейчас в теме
(2) если речь о терминале, то, конечно, да
если про оплату в рознице, то при оплате картой сумма оплаты проставляется автоматически, если не ошибаюсь так же со скидкой
+
4. olegmedvedev 65 03.05.17 11:28 Сейчас в теме
(3)
если про оплату в рознице,

я имел ввиду про оплату в рознице. Вообще странно, он должен ругаться так, если сумма чека со скидкой 50 рублей, а вы к оплате вносите допустим 100 рублей.
Отладчиком смотрели где ошибка выпадает?
+
6. Aftee 03.05.17 11:36 Сейчас в теме
(4) отладчиком не проверял.
Сейчас еще заметил при оплате наличными: цена товара - 152 рубля, скидка 10.64 рублей. Получилась цена товара со скидкой - 141.36 рублей. В ИТОГЕ чека получилось 130.73 рублей, наличными - 141.36 рублей, скидка - 10.64 рублей. Что за бред?
+
5. Sokar 03.05.17 11:33 Сейчас в теме
скидка в процентах? может быть причина в округлении финальной суммы
+
7. Aftee 03.05.17 11:37 Сейчас в теме
(5) да, скидка процентная. Финальная сумма - сумма всего по документу чек ккм? Совпадает с точностью до 2ух знаков после запятой, что в терминальном чеке, что в рознице.
+
8. Sokar 03.05.17 11:47 Сейчас в теме
вопрос в моменте округления... т.е. округление происходит ДО передачи суммы в терминал и в ккт? или округление происходит в момент конечной обработки суммы при выводе чека?

поясню:
1) на экране 133,5 р. скидка 7%
2) финал суммы без округления 124,155
3) а отображается 124,16

вот тут и вопрос что передается: 124,155 или 124,16?
+
9. myromskui 4 06.05.17 18:57 Сейчас в теме
приветствую!
проблема со скидками всегда была больной темой 1С и ККМ

у меня был пример:
установлена УТ 10.3.42.1 и ККТ с передачей данных Штрих М РР01ПТК с последней прошивкой и драйвером 4.13.572
все самое последнее и свежее! .... но и тут проблемы со скидками

вообщем я не стал долго париться - дернул функционал округления как он был раньше через ТОСервер

в итоге в ОбщемМодуле МенеджерОборудованияВызовСервера процедура ПолучитьXMLПакетДляФискализацияЧека

поменял следующее:
============================================================­=================
Если ТекущаяПозиция.Свойство("ФискальнаяСтрока") Тогда
ЗначениеСкидки = ТекущаяПозиция.Количество*ТекущаяПозиция.Цена -Цел(ТекущаяПозиция.Количество*ТекущаяПозиция.Цена); //снгИлья
ЗаписьXML.ЗаписатьНачалоЭлемента("FiscalString");
ЗаписьXML.ЗаписатьАтрибут("Name" , XMLСтрока(ТекущаяПозиция.Наименование));
Если ЗначениеСкидки <> 0 Тогда
ЗаписьXML.ЗаписатьАтрибут("Quantity" , XMLСтрока("1"));
ЗаписьXML.ЗаписатьАтрибут("Price" , XMLСтрока(ТекущаяПозиция.Сумма));
ЗаписьXML.ЗаписатьАтрибут("Amount" , XMLСтрока(ТекущаяПозиция.Сумма));
Иначе
ЗаписьXML.ЗаписатьАтрибут("Quantity" , XMLСтрока(ТекущаяПозиция.Количество));
ЗаписьXML.ЗаписатьАтрибут("Price" , XMLСтрока(ТекущаяПозиция.Цена));
ЗаписьXML.ЗаписатьАтрибут("Amount" , XMLСтрока(ТекущаяПозиция.Сумма));
КонецЕсли;
ЗаписьXML.ЗаписатьАтрибут("Department", XMLСтрока(ТекущаяПозиция.НомерСекции));
Если НЕ ПустаяСтрока(ТекущаяПозиция.СтавкаНДС) Тогда
ЗаписьXML.ЗаписатьАтрибут("Tax" , "none");//XMLСтрока(ТекущаяПозиция.СтавкаНДС)); снгИлья
Иначе
ЗаписьXML.ЗаписатьАтрибут("Tax" , "none");
КонецЕсли;
ЗаписьXML.ЗаписатьКонецЭлемента();
============================================================­===========

после таких правок проблемы с округлением и со скидками ушли
а также чеки стали печататься БезНДС как и положено (так как НДС подставлялся не из Чека,а из Номенклатуры)
+
10. san059 06.09.18 09:31 Сейчас в теме
(9) Данная ошибка возникает когда цена допустим 0.33, количество 3, а сумма 1 руб.
Не логично как то заменить количество на 1 шт, а цену и сумму взять 1, покупатель может не оценить. Более правильно разделить на 2 строки с разными ценами. 2*0,33 и 1*0,34
Отклонение=0;
Е
сли ТекущаяПозиция.Свойство("ФискальнаяСтрока") Тогда 
	Отклонение= ТекущаяПозиция.Количество*ТекущаяПозиция.Цена - ТекущаяПозиция.Сумма;
	ЗаписьXML.ЗаписатьНачалоЭлемента("FiscalString"); 
	ЗаписьXML.ЗаписатьАтрибут("Name" , XMLСтрока(ТекущаяПозиция.Наименование)); 
	Если Отклонение  <> 0 Тогда
		Кол = ТекущаяПозиция.Количество-1;
		Сумм = Кол * ТекущаяПозиция.Цена; 
		ЗаписьXML.ЗаписатьАтрибут("Quantity" , XMLСтрока(Кол)); 
		ЗаписьXML.ЗаписатьАтрибут("Price" , XMLСтрока(ТекущаяПозиция.Цена)); 
		ЗаписьXML.ЗаписатьАтрибут("Amount" , XMLСтрока(Сумм)); 
	Иначе 
		ЗаписьXML.ЗаписатьАтрибут("Quantity" , XMLСтрока(ТекущаяПозиция.Количество)); 
		ЗаписьXML.ЗаписатьАтрибут("Price" , XMLСтрока(ТекущаяПозиция.Цена)); 
		ЗаписьXML.ЗаписатьАтрибут("Amount" , XMLСтрока(ТекущаяПозиция.Сумма)); 
	КонецЕсли;	
	ЗаписьXML.ЗаписатьАтрибут("Department", XMLСтрока(ТекущаяПозиция.НомерСекции)); 
	Если НЕ ПустаяСтрока(ТекущаяПозиция.СтавкаНДС) Тогда 
		ЗаписьXML.ЗаписатьАтрибут("Tax" , "none");//XMLСтрока(ТекущаяПозиция.СтавкаНДС));
	Иначе 
		ЗаписьXML.ЗаписатьАтрибут("Tax" , "none"); 
	КонецЕсли; 
	ЗаписьXML.ЗаписатьКонецЭлемента(); 
	Если Отклоение <> 0 Тогда \\выведим еще одну строку для выравнивания суммы
		ЗаписьXML.ЗаписатьНачалоЭлемента("FiscalString");
		ЗаписьXML.ЗаписатьАтрибут("Name" , XMLСтрока(ТекущаяПозиция.Наименование)); 
		ЗаписьXML.ЗаписатьАтрибут("Quantity" , XMLСтрока(Кол));
		ОстСуммы = ТекущаяПозиция.Сумма - Сумм;
		ЗаписьXML.ЗаписатьАтрибут("Price" , XMLСтрока(ОстСуммы)); 
		ЗаписьXML.ЗаписатьАтрибут("Amount" , XMLСтрока(ОстСуммы));
		ЗаписьXML.ЗаписатьАтрибут("Department", XMLСтрока(ТекущаяПозиция.НомерСекции));
		Если НЕ ПустаяСтрока(ТекущаяПозиция.СтавкаНДС) Тогда 
			ЗаписьXML.ЗаписатьАтрибут("Tax" ,"none");//XMLСтрока(ТекущаяПозиция.СтавкаНДС)); 
		Иначе 
			ЗаписьXML.ЗаписатьАтрибут("Tax" , "none"); 
		КонецЕсли; 
		ЗаписьXML.ЗаписатьКонецЭлемента(); 
	КонецЕсли;
КонецЕсли;
Показать
+
Внимание! Тема сдана в архив

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