УТ 10.3, АТОЛ, Оплата Дисконтными картами

1. MAXXL 13 19.08.18 19:51 Сейчас в теме
На старых прошивках АТОЛ принимал нормально поле скидка, через нее проводили оплаты дисконтными картами. Теперь такая схема не работает - ккм дает ошибку. Нужно чтобы Сумма=Цена*Количество. Виды оплат тоже доступны только 4 - Нал, безнал, аванс, кредит. В таблице видов оплат драйвера
ККМ доступны другие, которые можно переименовать, но к ним нельзя обратиться из 1С (ну или не нашел каким образом).
Кто-нибудь решал такую проблему?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. insurgut 208 19.08.18 22:42 Сейчас в теме
Дисконтной картой вы можете скидку провести, а не оплатить. Поставили АТОЛы с последней прошивкой. Все прекрасно как работало так и работает.
О какой проблеме всё-таки речь идет? Может вы разработали какую-то свою оплату бонусами? В любом случае решение - в доработке обработки печати чека ККМ.
3. MAXXL 13 19.08.18 22:58 Сейчас в теме
(2) Пытался провести скидкой - дает ошибку. Что нужно передавать если со скидкой? Видел уже несколько вариантов - Цена, Количество, Сумма-Скидка; Цена, Количество, Сумма, Сумма со скидкой. На все варианты выдает ошибку.
4. insurgut 208 20.08.18 06:41 Сейчас в теме
(3) Цена должна быть со скидкой, а суммы для покупателя отдельно печатаются.
Если ТекущаяПозиция.СуммаСкидок <> 0 Тогда
    ЦенаСоСкидками = Окр(ТекущаяПозиция.Сумма / ТекущаяПозиция.Количество, 2);
    ЦенаБезСкидок = Окр((ТекущаяПозиция.Сумма+ТекущаяПозиция.СуммаСкидок)/ТекущаяПозиция.Количество, 2);
    СуммаБезСкидок = ТекущаяПозиция.Сумма+ТекущаяПозиция.СуммаСкидок;
Иначе
    ЦенаСоСкидками = ТекущаяПозиция.Цена; 
    ЦенаБезСкидок = ТекущаяПозиция.Цена;
    СуммаБезСкидок = ТекущаяПозиция.Сумма;
КонецЕсли;
...
ЗаписьXML.ЗаписатьАтрибут("PriceWithDiscount"    , XMLСтрока(ЦенаСоСкидками));
ЗаписьXML.ЗаписатьАтрибут("SumWithDiscount"    , XMLСтрока(ТекущаяПозиция.Сумма));
ЗаписьXML.ЗаписатьАтрибут("DiscountSum"          , XMLСтрока(ТекущаяПозиция.СуммаСкидок));
...
МассивСтрокЧека.Добавить(ФорматированнаяСтрока(СокрЛП(ТекущаяПозиция.Номенклатура),СокрЛП(Формат(ТекущаяПозиция.Количество,"ЧЦ=12; ЧДЦ=3"))+"x"+СокрЛП(Формат(ЦенаБезСкидок,"ЧЦ=12; ЧДЦ=2"))+"="+СокрЛП(Формат(СуммаБезСкидок,"ЧЦ=12; ЧДЦ=2"))));                
Если ТекущаяПозиция.СуммаСкидок<>0 Тогда
    МассивСтрокЧека.Добавить(ФорматированнаяСтрока("Скидка суммой: ",СокрЛП(Формат(ТекущаяПозиция.СуммаСкидок,"ЧЦ=12; ЧДЦ=2"))));    
    МассивСтрокЧека.Добавить(ФорматированнаяСтрока("Сумма: ",СокрЛП(Формат(ТекущаяПозиция.Сумма,"ЧЦ=12; ЧДЦ=2"))));
КонецЕсли;

Показать
5. MAXXL 13 20.08.18 09:54 Сейчас в теме
Спасибо за код. Примерно такой у меня и используется, кроме передачи DiscountSum - с ним ошибку выдавало, но проверю еще раз.
Вопрос - а если вся оплата идет за счет дисконтной карты? Тогда получается Цена=0, Сумма=0, к Оплате 0; И нулевой чек тоже ошибку же дает. Не сталкивались с таким?
6. ejique 24.04.19 15:13 Сейчас в теме
(5)Добрый день
удалось доработать чтобы пробивать нулевой чек?
7. MAXXL 13 27.04.19 11:00 Сейчас в теме
(6)
Добрый. Да, примерно как в (4) предложено. Пришлось правда перейти на ДТО 9
Оставьте свое сообщение

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