|
v7: Некорректный подсчет сумм в fr_elves | ☑ | ||
---|---|---|---|---|
0
san4ez1008
30.06.17
✎
10:29
|
Доброго дня всем. Конфигурация ТиС 9.2. Внедряю новую программу лояльности, возникла проблема. В чеке применяется скидка. Допустим, чек:
Товар 001, цена 139р, количество 4, сумма 556. Применяется скидка 440р. Сумма стала 116р, соответственно, цена стала 29р. Товар 002, цена 144, количество 3, сумма 432. Применяется скидка 341р. Сумма стала 91, соответственно, цена стала 30.33р. Далее происходит нечто странное: Пока СписокТоваров.ПолучитьСтроку() = 1 Цикл СтрокаДляПечати = СокрЛП(СписокТоваров.ТовНаим); ДлинаСтроки = 32; Объект.Password = Пароль; Объект.StringForPrinting = Лев(СтрокаДляПечати,ДлинаСтроки); // Объект.Price = СписокТоваров.Цена; Если СписокТоваров.Количество=0 тогда Объект.Price = СписокТоваров.Цена; иначе Объект.Price = СписокТоваров.Сумма/СписокТоваров.Количество ; КонецЕсли; Объект.Quantity = СписокТоваров.Количество; Объект.Department = НомерСекции; ... КонецЦикла; При подсчете всех сумм fr_elves выдает суммы 116 и 90.99, исходя из цен 29 и 30.33. Как цену 90.99 округлить до 91, чтобы чек выходил на ровную сумму, а не на ххх.99? |
|||
1
h-sp
30.06.17
✎
10:37
|
(0) разбейте на две строчки
|
|||
2
san4ez1008
30.06.17
✎
10:40
|
(1) сумму 90.99 на 2 строки?
|
|||
3
san4ez1008
30.06.17
✎
11:17
|
больше дельных мыслей нет?
|
|||
4
h-sp
30.06.17
✎
11:22
|
(3) нет. Хоть головой о стенку бейтесь, 30.33 * 3 = 90.99. Это закон природы. Никак он не может вдруг стать 91.
|
|||
5
san4ez1008
30.06.17
✎
11:23
|
а в настройках ккм нельзя как-нибудь подобное настроить?
|
|||
6
h-sp
30.06.17
✎
11:28
|
(5) что настроить? Чтобы неправильно умножало? Зачем вам? Налоговая потом вас взгреет.
|
|||
7
san4ez1008
30.06.17
✎
11:33
|
(6) просто из-за вычислений в драйвере, например, сумма 104, делится на 3 и получается округленная цена 34.67, приводит к сумме 104.01, ну и потом ошибка Cумма всех типов оплаты меньше итога чека...
|
|||
8
san4ez1008
03.07.17
✎
12:46
|
(6) добрый вечер. подскажите, пожалуйста, на примере, как разбить на 2 строки?
|
|||
9
Масянька
03.07.17
✎
12:48
|
Вот скажите мне - на фига делать пересчет в кассе, которая с компа получает уже рассчитанные данные?
|
|||
10
san4ez1008
03.07.17
✎
12:52
|
суть в том, что после того,как распределилась скидка, при печати чека в fr_elves передаю сумму/количество в 1С (например, после списания бонусов сумма позиции стала 104 р, количество 3 шт, соответственно, цена 34.(6),это число передается в fr_elves, драйвер ККТ в свойстве "объект.price" передается цена 34.67, соответственно, итог позиции высчитывается 104.01, что вызывает ошибку "Сумма всех типов оплаты меньше итога чека", так как общий итог чека больше чем сумма на экране в 1С. Вот и не могу понять, что мне с этим делать..
|
|||
11
san4ez1008
03.07.17
✎
13:06
|
так как раскидать на 2 строки, подскажете, нет?
|
|||
12
san4ez1008
03.07.17
✎
13:19
|
ну ребяяяят,вопрос жизни и смерти,помогите, пжлст(((
|
|||
13
san4ez1008
03.07.17
✎
13:26
|
неужели ни у кого мозги в этом направлении не работают...
|
|||
14
san4ez1008
03.07.17
✎
13:51
|
КАК РАЗБИТЬ НА 2 СТРОКИ ОДНУ ПОЗИЦИЮ?!!!
|
|||
15
mexanik_96
03.07.17
✎
14:16
|
14 ты что хочешь то? ну сделай скидку в поле драйвера там же можно!!!
|
|||
16
mexanik_96
03.07.17
✎
14:16
|
типа Объект.DISCOUNT = 100 (или как там посмотри в мануале там все есть)
|
|||
17
mexanik_96
03.07.17
✎
14:17
|
+ (16) или в отладчике тормозни посмотри поля(какие там есть) кома(если по-другому не знаешь как свойства длл посмотреть можно)
|
|||
18
HawkEye
03.07.17
✎
14:18
|
(14) надо громче кричать, тогда все услышат и прибегут )))
(13) работают у всех, кроме одного человека..... |
|||
19
san4ez1008
03.07.17
✎
14:26
|
(17) да не в скидке дело, а в том, что при подсчете подытога позиции сумма отличается от той, что на экране в чеке, на 1-3 копейки!!
|
|||
20
mexanik_96
03.07.17
✎
14:30
|
(19) правдва? дак ты цену и скидку на фр рассчитывать должен! ну ты попробуй
|
|||
21
Масянька
03.07.17
✎
14:34
|
(19) Ты успокойся... Водички холодной попей... А потом внимательно прочитай (9)... Подумай...
|
|||
22
san4ez1008
03.07.17
✎
14:36
|
(20) цену я рассчитываю на ФР
Объект.Price = СписокТоваров.Сумма/СписокТоваров.Количество; Здесь передается сумма 104 и количество 3, получаю 34.(6), а дальше ФР сам считает стоимость, округляя цену до 34.7 и выставляя после названия позиции 3.000X34.67 ?104.01 Где это он вычисляет? |
|||
23
mexanik_96
03.07.17
✎
14:44
|
(22) цену, скидку, сумму все в фр передавай, оно должно быть на чеке
|
|||
24
dezss
03.07.17
✎
14:44
|
забей на попозиционную передачу....формируй xml и шли на кассу и будет тебе счастье...
ну либо бей на строки сам, чтоб сумма сходилась... Например, Окр(ТвояЦена-0.005,2) - это будет цена общего количества - 1, а потом одну позицию Окр(ТвояЦена+0.0049,2) Это не точное решение, а только направление. |
|||
25
mexanik_96
03.07.17
✎
14:45
|
к (22) прайс закинь какой у тебя из тч без расчета здесь, сама там посчитает все(фр)
|
|||
26
mexanik_96
03.07.17
✎
14:46
|
(24) О! Окр(ТвояЦена-0.005,2) это выход да! а почему именно 0,005 а не -145456.55?
|
|||
27
dezss
03.07.17
✎
14:47
|
(26) потому что тебе надо до 2-х знаков после запятой...
|
|||
28
dezss
03.07.17
✎
14:47
|
(27) 10-й части от копеек у нас в стране пока нет, насколько я знаю...)
|
|||
29
mexanik_96
03.07.17
✎
14:49
|
+ (28) у него как раз из за разрядов(смещения) песня вся и началась
|
|||
30
dezss
03.07.17
✎
14:55
|
(29) ну вот, поэтому я и привел пример с округлением.
А на последнюю строку вообще можно посчитать разницу между цена*(количество-1) и суммой. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |