Форум программистов, компьютерный форум, киберфорум
Наши страницы
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.58/48: Рейтинг темы: голосов - 48, средняя оценка - 4.58
Tomosh
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 42
1

Округление Суммы Чека Для Фп

01.09.2013, 13:47. Просмотров 9010. Ответов 2
Метки нет (Все метки)

сеть магазинов, терминальный сервер, чеки печатаются на локальных ФП

есть система накопительных дисконтов, 5-7-9-10-15%

всё самописное 7.7

проблема:
товар крупный, штучный, дорогой, но вот эти 7-9 % скидки...
продавцы жалуются на то, что попадаются суммы в чеках с копейками, долго рассчитываться с покупателем, неудобно, а округлять на ходу - некрасиво, бывает что покупатель проверяет чек, скажут ему с вас 295, а он посмотрит - 294.75, и бывают такие, кто ещё и шум поднимают...

казалось бы, чего проще:

Код ( (Unknown Language)):
СуммаСНДС = ОКР(СуммаСНДС);
СуммаСкидки = ОКР(СуммаСкидки);
но не тут-то было!

ФП печатает чек построчно. И ему плевать что там у тебя в итоге, он считает каждую напечатанную строку, а потом сам подбивает и сумму и скидку...
фактически ему передаётся только сумма, налоговая ставка, процент скидки, название товара и ещё парочка не относящихся к делу параметров.
а считает он сам, и ничего он округлять не собирается.

т.е. чтобы получить нужный результат, нужно выдавать ему строки чека, заранее обработанные под конечный результат...
выдавать ему разные скидки под каждую отдельную строку - неправильно изначально, так как скидка указывается в чеке, т.е. покупатель опять же увидит, что в этой строке у него 7%, а в этой, например, 6.87% - ну чтобы получить итого целое число - и опять же странные ситуации...

НО, у ФП есть ещё функция скидки не по процентам, а по сумме, при этом надо явно указать эту сумму.
вроде бы неплохой вариант, покупатель увидит что у него покупка на 455, скидка 32 итого к оплате 423. сразу сходу посчитать 7% там или 6.87% или 7.12% - нереально, а на глаз - примерно правильно.

теперь нужно построчно рассчитать округлённую суммовую скидку, таким образом, чтобы в ИТОГО всё сходилось...

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

для примера возьму небольшие числа и "круглую" скидку 10%, считать удобно и наглядно:

4 товара, сумма 100 скидка 10%


Код
1. товар1 сумма 26 виртуальная скидка 2,6
2. товар2 сумма 38 виртуальная скидка 3,8
3. товар3 сумма 17 виртуальная скидка 1,7
4. товар4 сумма 19 виртуальная скидка 1,9
должны получить к оплате 90, скидка 10

округляем скидку в меньшую сторону:

Код
1. товар1 сумма 26 скидка 2 к оплате 24
2. товар2 сумма 38 скидка 3 к оплате 35
3. товар3 сумма 17 скидка 1 к оплате 16
4. товар4 сумма 19 скидка 1 к оплате 18
ИТОГО получаем к оплате 93 скидка 7, негусто... 10% даже не пахнет...

округляем в большую сторону:

Код
1. товар1 сумма 26 скидка 3 к оплате 23
2. товар2 сумма 38 скидка 4 к оплате 34
3. товар3 сумма 17 скидка 2 к оплате 15
4. товар4 сумма 19 скидка 2 к оплате 17
ИТОГО к оплате 89 скидка 11

для товаров ценой 23 33 21 23 получаем:

в большую сторону - к оплате 87 скидка 13
в меньшую сторону - к оплате 91 скидка 9

и, заметьте, такой разброс на "круглой" скидке

что происходит на 7% и 9% - легко догадаться...

посоветуйте что-нибудь, ато даже как-то стыдно пасовать, замучаюсь объяснять почему не сделал такую "простейшую вещь"
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.09.2013, 13:47
Ответы с готовыми решениями:

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

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

Выбор оборудования при печати чека
Доброго времени суток. Такой вопрос: 1с 7.7, магазин от рарус. Вообще эта...

Печать чека Без НДС
Добрый день Подскажите как убрать 18% ндс в чеке ккм на выходе с кассы ?надо...

УТ 10.3. Ошибка при печати чека ККМ
Добрый день Два вопроса отрыл кассовую смену и теперь закрыть не могу и...

2
Дийнеки
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 947
01.09.2013, 18:56 2
Советую:
Я предполагаю
- Вы россиянин (в РБ нет копеек).
- на разные товары могут быть разные % скидок. Даже если сейчас этого нет, то потом может быть.
- но пока скидка на одного покупателя едина и на все товары.


Мучатся с округлением - дело бесполезное, тебя всегда будут тыкать носом в разные ситуации.
Я бы категорично видел только один выход: печатать товары с ценами без скидок. А в конце строку с фиктивным товаром
"Общая скидка". И на ней вычисленную сумму со знаком минус.
0
Tomosh
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 42
02.09.2013, 17:02 3
Цитата Сообщение от Дайнеко
Советую:
Я предполагаю
- Вы россиянин (в РБ нет копеек).
- на разные товары могут быть разные % скидок. Даже если сейчас этого нет, то потом может быть.
- но пока скидка на одного покупателя едина и на все товары.
на самом деле, достаточно развитая система скидок уже присутствует, скидки есть и на покупателя(накопительная персонифицированная дисконтка), и на товары, и особые условия, навроде: купите то и то, получите вон то на 50% дешевле, и автоматическое увеличение процента дисконта на период акций/праздников, и система референций "приведи друга" с зачётом бонусов на карточку референта, и отдельная большая скидка на день рождения клиента раз в году...
если несколько скидок накладываются, специальная обработка всегда выбирает наибольшую действующую



Цитата Сообщение от Дайнеко
Мучатся с округлением - дело бесполезное, тебя всегда будут тыкать носом в разные ситуации.
Я бы категорично видел только один выход: печатать товары с ценами без скидок. А в конце строку с фиктивным товаром
"Общая скидка". И на ней вычисленную сумму со знаком минус.
а вот за это спасибо, беру на вооружение, придётся помучиться правда немного из-за особенностей формирования чека, но навскидку кажется простым и реализуемым вариантом.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.09.2013, 17:02

УПП 1.3. Не выделен НДС на чеке ККТ (пробитие чека коррекции?)
Доброе утро, ребят столкнулся с проблемой: Кассир пробил чек, но не выделил в...

Розница 2.2. Печать чека и перемещение товаров между магазинами(складами)
Всем здравствуйте. не давно начал работать с 1с и имеется очень важный вопрос....

Округление суммы
Есть проблема. в 1с 8.3 УТ1.1 необходимо сделать округление итоговой суммы со...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru