|
1С Запрос, количество знаков после запятой при группировке | ☑ | ||
---|---|---|---|---|
0
CepeLLlka
07.06.24
✎
15:52
|
Добрый день.
В клиент-серверном варианте, на платформе 8.3.22.2239 и СУБД SQL Server 2012 я столкнулся с такой ошибкой: ВЫБРАТЬ ТестОбороты.Товар КАК Товар, ТестОбороты.КоличествоОборот КАК КоличествоОборот ИЗ РегистрНакопления.Тест.Обороты КАК ТестОбороты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТестОбороты.Товар КАК Товар, СУММА(ТестОбороты.КоличествоОборот) КАК КоличествоОборот ИЗ РегистрНакопления.Тест.Обороты КАК ТестОбороты СГРУППИРОВАТЬ ПО ТестОбороты.Товар Два этих запроса выдают разный результат, при условии, что в оборотном регистре накопления "Тест" только одна запись Товар № 1 с количеством -0,003494665 Первый запрос выводит количество равное -0,003494665 А второй запрос в результат выводит -0,00349467 по сути округляя и теряя один знак после запятой. Подскажите пожалуйста, что можно сделать, чтобы не было округления и считалось верно? |
5 6 9 16 |
||
1
Волшебник
07.06.24
✎
15:51
|
"Тест" — плохое название регистра
|
|||
2
mikecool
07.06.24
✎
15:51
|
ВЫРАЗИТЬ в СУММА() попробуй запихнуть
|
7 11 |
||
3
maxab72
07.06.24
✎
15:51
|
Какая размерность у ресурса "Количество"?
|
4 |
||
4
CepeLLlka
07.06.24
✎
15:52
|
(3)22 символа и 9 из них, после запятой.
|
|||
5
Eiffil123
07.06.24
✎
15:53
|
(0) сталкивались с чем-то похожим на ERP (при расчете себестоимости при очень малом количестве). Выходили из положения тем, что сумму внутри агрегатной функции умножали на 10000, а потом итоговую сумму делили на 10000.
|
|||
6
PR
07.06.24
✎
15:53
|
8 |
|||
7
CepeLLlka
07.06.24
✎
15:53
|
(2)Вопрос решён. Спасибо.
|
|||
8
CepeLLlka
07.06.24
✎
15:54
|
(6)Виноват, да.
|
12 |
||
9
Мультук
07.06.24
✎
15:55
|
11 |
|||
10
PR
07.06.24
✎
15:56
|
Именно поэтому https://its.1c.ru/db/v8std/content/535/hdoc
|
13 |
||
11
CepeLLlka
07.06.24
✎
15:57
|
||||
12
PR
07.06.24
✎
15:58
|
(8) Я не про то, я про то, что не помню где, ищи сам, но причина в том, что скуль округляет все вычисления до скольки-то там знаков, до 6 вроде
И 1С тут бессильна Можно в запросе все умножать на миллиард, а потом в 1С уже делить на миллиард, например |
|||
13
Garykom
07.06.24
✎
15:59
|
(10)
При выполнении арифметических операций в запросах к базе данных платформа 1С:Предприятия поддерживает точность вычислений до 8 разрядов дробной части. |
14 |
||
14
CepeLLlka
07.06.24
✎
16:02
|
(13)В файловой то всё норм было, я тестил
|
|||
15
breezee
07.06.24
✎
20:31
|
Сделайте единицу измерения Микро*.
И создавайте запись в регистр 100 микро(допустим, грамм) |
|||
16
timurhv
07.06.24
✎
21:37
|
(0) К числам с плавающей точкой всегда надо относиться особенно осторожно.
Тут Excel вроде уже начинает считать не как целые числа, а как с плавающей точкой со всеми вытекающими. А то начнется эта ваша 1С неправильно считает.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |