Имя: Пароль:
1C
 
Как округлить число в запросе?
0 Woolf
 
27.10.09
10:39
Господа! Прошу помощи в подсказке нижеследующего момента:
как в 1С8 в запросе округлить результат деления двух чисел: a/b
Причем результат должен быть таким: например 25/20 = 1 + 5
(речь идёт об упаковках и штуках - там такая арифметика приемлема). Возможно ли это реализовать в запросе?
Всем спасибо
1 Икогнито
 
27.10.09
10:40
Выразить(5,556543 как Число(10,2))
2 Андрюха
 
27.10.09
10:40
Округлить "Число зверя"?
3 Нуф-Нуф
 
27.10.09
10:40
(1) он не это имел ввиду.
4 IronDemon
 
27.10.09
10:41
Целую и дробную отдельно получить?
5 Икогнито
 
27.10.09
10:41
(3) тогда не понимаю, как 25/20 может быть равно 1+5
6 Woolf
 
27.10.09
10:42
(5) - В ящике 20 бутылок пива
Имеем 25 бутылок пива = 1 ящик + 5 бутылок
7 Defender aka LINN
 
27.10.09
10:43
Выразить(25/20-0.5 КАК Число(10, 0)) КАК ЧислоЦелых,
25 - Выразить(25/20-0.5 КАК Число(10, 0)) КАК Остаток

И дальше выводи как хочешь. Или все при выводе считай.
8 Woolf
 
27.10.09
10:59
Уважаемый Defender aka LINN! Вопрос такой: не могли бы Вы объяснить, а чего ж это такое в вышеупомянутой конструкции: -0.5  ?
9 Ненавижу 1С
 
гуру
27.10.09
11:02
(8) это поправка, чтоб не округляло, а брало целую часть
10 Ненавижу 1С
 
гуру
27.10.09
11:04
(7) поправка на остаток:
25 - 20*Выразить(25/20-0.5 КАК Число(10, 0)) КАК Остаток
11 Woolf
 
31.10.09
09:05
(10) Ага точно
Однако вот в чём вопрос: почему в отчете это работает, а во внешней печатной форме
вываливается ошибка:

Ошибка при вызове метода контекста (Выполнить): {(5, 1)}: Синтаксическая ошибка "Выразить(Док.Количество/Док.Номенклатура.ЕдиницаДляОтчетов.Коэффициент-0.5"
<<?>>Выразить(Док.Количество/Док.Номенклатура.ЕдиницаДляОтчетов.Коэффициент-0.5 КАК Число(10, 0)) КАК ЧислоЦелых,
12 Woolf
 
31.10.09
09:06
Всё, понял, запятую забыл :))
Всем огромное спасибо
13 КнОпка
 
31.10.09
09:13
+