2016-11-17 2 views
1

Я работал над проектом SSRS и сталкивался с несколькими проблемами. Я пытаюсь перенести средние и средние команды на целые числа, а затем преобразовать их в строку.Проблема преобразования типов данных SSRS | Жесткий

См. Рисунок ниже. Я получаю странные результаты. Проблема в том, что когда я перехожу на 60 минут, я не получаю 01:01:00, но я получаю 61:00. Я пробовал публичные функции, такие как:

 Public Function MinsToHHMM (ByVal Minutes As Decimal) 
    Dim HourString = Floor(Minutes/60).ToString()  
    Dim MinString = Floor(Minutes Mod 60).ToString() 
    Return HourString.PadLeft(2, "0") & ":" & MinString.PadLeft(2, "0") 
    End Function  

    =Code.MinsToHHMM(Avg(Fields!test.Duration.Value)) 

Я не получаю правильное преобразование. Я пытаюсь получить формат hh: mm: ss.

Кто-нибудь знает, как изменить код, чтобы получить результат, который я хочу?

enter image description here

Спасибо большое!

Lukas

ответ

1

Я думаю, что вам не нужно использовать пользовательский код для этого, если ваше поле, содержащее информацию минут устанавливается в aggregable типа данных можно вычислить среднее значение в SSRS и форматировать его hh:mm:ss следующим :

=FORMAT(
    DATEADD(DateInterval.Minute,AVG(Fields!Minutes.Value),Cdate("00:00:00")), 
    "hh:mm:ss" 
) 

Дайте мне знать, если это поможет.

Смежные вопросы