Имя: Пароль:
1C
 
Округление в запросе, СКД
0 Trotter
 
14.09.18
11:04
Здравствуйте!
Читаю, что для этого используется ВЫРАЗИТЬ()
ВЫРАЗИТЬ(Продажи.Сумма / Продажи.Количество КАК ЧИСЛО(5, 2)) КАК ЦенаЗаЕденицу
ВЫРАЗИТЬ(Продажи.Себестоимость / Продажи.Количество КАК ЧИСЛО(5, 2)) КАК ССЗаЕденицу

результат:
Microsoft SQL Server Native Client 11.0: Ошибка арифметического переполнения при преобразовании numeric к типу данных numeric.
HRESULT=80040E57, SQLSrvr: SQLSTATE=22003, state=8, Severity=10, native=8115, line=1

Работает только как ЧИСЛО(15, 2)
1 Cyberhawk
 
14.09.18
11:08
А при чем тут округление и длина числа?
2 FIXXXL
 
14.09.18
11:08
(0) в чем проблема?
или ты хочешь 12348526,2369 неизвестным способом порезать более мелкого числа?
3 Trotter
 
14.09.18
11:16
ну например получается число:
53,103469621673632011054518133333333333333333333333333333

Хочу получить в результате 53, что для этого нужно ?
4 Darych
 
14.09.18
11:18
формат в настройках скд
5 FIXXXL
 
14.09.18
11:40
(3) вангую, что у тебя получается в какой-то момент
53535353,103469621673632011054518133333333333333333333333333333
которое не лезет в (5,2)
6 Sasha_H
 
14.09.18
12:05
(5) согласен!
7 Sasha_H
 
14.09.18
12:05
Сумма явно больше чем количество чего тут ванговать )))
8 Sasha_H
 
14.09.18
12:07
5 - разрядов в том числе с запятой, тоесть у тебя цена меньше 100 рублей
9 Sasha_H
 
14.09.18
12:10
так ток обычно процент считают но делают это как 6,2
10 Staler1
 
14.09.18
12:21
11 Staler1
 
14.09.18
12:22
(10)  там как раз есть округление!
12 FIXXXL
 
14.09.18
12:23
Формат - "режет", Выразить - округляет (в запросе)
13 PR
 
14.09.18
12:28
Порой ветки попадаются, хоть стой хоть падай, сразу вспоминается фильм "Тупой и еще тупее"
Собственно, ветку можно было уже после (0) закрывать, но после (5) точно можно закрывать
Скоро будут ветки заводить типа "Я сложил 2 и 2, у меня получилось 4, почему так получилось и как с этим теперь жить дальше?"
14 Trotter
 
14.09.18
12:41
(4) Помогло, спасибо.
15 Trotter
 
14.09.18
12:43
(12) ну да, формат "зарезал" число. но оно не округлилось )
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.