Имя: Пароль:
1C
1С v8
Запрос СКД Итог Время Часы Минуты
,
0 sema76
 
27.10.16
11:19
Делаю запрос к регистру, там Время. Время измеряется полностью в Часах и Долей часа. 12,33 означает 12 часов и 0,33 часа, т.е. 12 часов 20 минут.

Это поле перевожу в Часы и Минуты, с помощью Формата вместо Запятой ставлю Двоеточие.

(Таблица.Поле - ВЫБОР
    КОГДА (ВЫРАЗИТЬ(Таблица.Поле КАК ЧИСЛО(15, 0))) > Таблица.Поле
        ТОГДА (ВЫРАЗИТЬ(Таблица.Поле КАК ЧИСЛО(15, 0))) - 1
    ИНАЧЕ ВЫРАЗИТЬ(Таблица.Поле КАК ЧИСЛО(15, 0))
КОНЕЦ) * 0.6 + ВЫБОР
    КОГДА (ВЫРАЗИТЬ(Таблица.Поле КАК ЧИСЛО(15, 0))) > Таблица.Поле
        ТОГДА (ВЫРАЗИТЬ(Таблица.Поле КАК ЧИСЛО(15, 0))) - 1
    ИНАЧЕ ВЫРАЗИТЬ(Таблица.Поле КАК ЧИСЛО(15, 0))
КОНЕЦ

В Строке по Полю все отлично.

А как быть с итогами.

Либо складывать сначала и потом Преобразовывать или складывать уже Преобразованное?
1 mehfk
 
27.10.16
11:23
Сделай два поля, одно из которых выводи в итоговых записях, а другое в детальных.
2 sema76
 
27.10.16
11:38
(1) А как совместить Столбец Строки со Столбцом Итогов?
3 mehfk
 
27.10.16
11:41
А еще лучше выкинуть этот код из запроса и вставить в выражение в ресурсах СКД.
4 sema76
 
27.10.16
12:04
(3) Думаю, конечно, можно сделать, но как конкретно. По этому полю есть Промежуточные группировки и Общий Итог.
5 mehfk
 
27.10.16
12:04
6 sema76
 
27.10.16
12:12
(5) )))
7 sema76
 
27.10.16
12:15
Может через Пользовательские поля?
8 DrShad
 
27.10.16
12:26
(7) а попробуй )))
9 sema76
 
27.10.16
12:33
(8) А ты как бы сделал?
10 DrShad
 
27.10.16
12:49
(9) несколько раз уже делал и кроме как в (3) вариантов нет
11 sema76
 
27.10.16
13:34
(10) Все гораздо проще оказалось.
12 sema76
 
27.10.16
13:35
(0) Пользовательские поля. Только немного синтаксис другой. Ну и настроить нужный Формат через Условное форматирование.

(Поле - Выбор
    Когда Выразить(Поле, "Число(15,0)") > Поле
        Тогда Выразить(Поле, "Число(15,0)") - 1
    Иначе Выразить(Поле, "Число(15,0)")
Конец) * 0.6 + Выбор
    Когда Выразить(Поле, "Число(15,0)") > Поле
        Тогда Выразить(Поле, "Число(15,0)") - 1
    Иначе Выразить(Поле, "Число(15,0)")
Конец
13 sema76
 
27.10.16
15:38
(12) Немного поспешил. Для самой Группировки по Полю работает. Для общих Итогов по Родительским группировкам не работает. Но хоть что-то.
14 sema76
 
27.10.16
17:00
(13) В смысле Итог по Строкам Поля правильно считает. А по Строкам Родителя Поля не правильно. Надо подумать как сделать чтобы считалось.
Независимо от того, куда вы едете — это в гору и против ветра!