|
Искаженная сумма полученная через COM-соединение | ☑ | ||
---|---|---|---|---|
0
Cube
27.08.12
✎
10:04
|
Платформа 8.2.15.318.
Все базы файловые. Запрос в УПП (релиз 1.3.26.1): http://storage7.static.itmages.ru/i/12/0827/h_1346046791_4026868_fa34e1ecba.png В строке №3 сумма 874,69. В строке №4 сумма 68,60 Подключаюсь к этой же базе УПП из ЗиУП (релиз 2.5.54.1) через v82.COMConnector и получаю: http://storage8.static.itmages.ru/i/12/0827/h_1346046964_6685415_a3062d5023.png В строке №3 сумма 874,6900000000001 В строке №4 сумма 68,59999999999999 По остальным строкам всё нормально. Есть и другие документы с подобными финтами, но закономерности появления этой бороды я не выявил. На боевых базах в клиент-серверном варианте та же проблема с теми же документами. Кто-нибудь сталкивался с подобным? Есть идеи как это лечить? |
|||
1
andrewks
27.08.12
✎
10:08
|
"Есть идеи как это лечить?" Окр(), не?
|
|||
2
andrewks
27.08.12
✎
10:09
|
если в самом запросе - cast()
|
|||
3
Cube
27.08.12
✎
10:09
|
(1) Я хочу устранить причину, а не бороться со следствием... :)
|
|||
4
andrewks
27.08.12
✎
10:10
|
(3) "Я хочу устранить причину" неужто собрался ликвидировать 1С? :-)
|
|||
5
Cube
27.08.12
✎
10:11
|
(4) Ты думаешь, что причина в этом?))) Но тогда встанет другая проблема: где взять платформу :р
|
|||
6
чувак
27.08.12
✎
10:12
|
(4) огда ему надо перемещатся в 1960 год, искать Бориса
|
|||
7
andrewks
27.08.12
✎
10:12
|
не, а всё-таки, если в запросе прямо откастовать, всё равно по ком результат искажает, или нет?
|
|||
8
Cube
27.08.12
✎
10:14
|
(7) Я в английском синтаксисе запросов не бельмесо)) Ты предлагаешь выразить как число 15.2 что-ли?)
К тому же, запрос - это в УПП, а в ЗиУП я работаю уже с объектом... Запроса нет... |
|||
9
ДенисЧ
27.08.12
✎
10:16
|
Это нормально
|
|||
10
andrewks
27.08.12
✎
10:16
|
"Ты предлагаешь выразить как число 15.2 что-ли?" ага
|
|||
11
ДенисЧ
27.08.12
✎
10:16
|
(7) ага.
|
|||
12
Cube
27.08.12
✎
10:16
|
(9) Что именно? И почему? :)
|
|||
13
andrewks
27.08.12
✎
10:16
|
а вообще, насколько помню, 2+2=3,(9)
|
|||
14
ДенисЧ
27.08.12
✎
10:17
|
(12) Потому что по Оле данные передаются не в том виде, что их хранит 1с
|
|||
15
Cube
27.08.12
✎
10:17
|
(10) А если ПФР опять захочет точность пять знаков после запятой? Не, такой вариант отпадает :)
|
|||
16
andrewks
27.08.12
✎
10:18
|
(15) сделаешь (17,5)
|
|||
17
Cube
27.08.12
✎
10:18
|
(14) И какие варианты выхода, кроме как прострелить коленку?)
|
|||
18
DailyLookingOn Sunset
27.08.12
✎
10:18
|
(6)
Че это Бориса-то. Билли и тех, кто придумал формат хранения вещественных чисел. |
|||
19
andrewks
27.08.12
✎
10:18
|
(17) ну, много ещё. об стену там, пузырёк с йадом, и т.д.
|
|||
20
DailyLookingOn Sunset
27.08.12
✎
10:18
|
(17)
Окр(X,Y) |
|||
21
Cube
27.08.12
✎
10:20
|
(19) Нужно, чтобы ни одного программиста не пострадало)
|
|||
22
Cube
27.08.12
✎
10:20
|
(20) Уже предлагали.
|
|||
23
Reset
27.08.12
✎
10:20
|
(22) Других нет вариантов
|
|||
24
ДенисЧ
27.08.12
✎
10:20
|
(17) Использовать округление
|
|||
25
Cube
27.08.12
✎
10:21
|
(23) Плохой пост. Сделаю вид, что я его не заметил :))))
|
|||
26
Cube
27.08.12
✎
10:21
|
(24) Что-то как-то жиденько... :) Ещё варианты есть?
|
|||
27
andrewks
27.08.12
✎
10:23
|
(26) есть. не использовать округление
|
|||
28
Reset
27.08.12
✎
10:23
|
Ну другие варианты только через опу. На "той" стороне пихать в строку, передавать строкой например.
Округдение самое то. Учитывая, что всегда (вроде) известна точность, особых сложносностей не долдно вызывать |
|||
29
ДенисЧ
27.08.12
✎
10:24
|
(26) Есть прострелить висок.
|
|||
30
DailyLookingOn Sunset
27.08.12
✎
10:24
|
||||
31
Cube
27.08.12
✎
10:25
|
Эх... Ладно, пойду округлю до 10 знаков после запятой... :)
|
|||
32
Reset
27.08.12
✎
10:26
|
Зачем до 10? До количества знаком после точки. По примеру из (0) - до 2х
|
|||
33
Cube
27.08.12
✎
10:31
|
(32) Потому что это заплатка (костыль), а не реальное округление. К тому же у меня это в обработке обмена, которая не знает, сумма это или ещё что, а в реальной базе 10 знаков после запятой никто реквизиты делать не будет.
Короче, чтобы не переписывать обмен потом, когда что-нибудь изменится. |
|||
34
Cube
27.08.12
✎
10:32
|
Сделал округление до 10 знаков после запятой, проблема ушла (точнее суслик-то есть, просто его не видно :)).
Всем спасибо) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |