Ronney
Ronney

Reputation: 25

SSRS change minute into day, hour and min

I have a Time column in which is in minute , in ssrs i need to get average and output in such a way that its in Day, Hour and min. For example Column name is Time (Min).How to write an expression in such a way that we can get result in day, hour and min

Upvotes: 0

Views: 1349

Answers (2)

RET
RET

Reputation: 871

Enter the following expression:

=Format(TimeSerial(0,Parameters!MyMins.Value,0),"dd") & " Days "
& Format(TimeSerial(0,Parameters!MyMins.Value,0),"HH") & " Hours "
& Format(TimeSerial(0,Parameters!MyMins.Value,0),"mm") & " Minutes "

Alternatively, create another parameter e.g. MyTime

=TimeSerial(0,Parameters!MyMins.Value,0)

(Ensure that this parameter is evaluated after MyMins by moving it down the list) Then put that into the code above

=Format(Parameters!MyTime.Value,"dd") & " Days "
& Format(Parameters!MyTime.Value,"HH") & " Hours "
& Format(Parameters!MyTime.Value,"mm") & " Minutes "

Upvotes: 0

Alan Schofield
Alan Schofield

Reputation: 21683

Assuming that your time column is just an integer datatype containing a number of minutes then something like this will work.

The following calculates based on a report parameter to make it easier to test so oyu will need to swap this out for the correct column name and aggregations. e.g. if you time column is called MyTime and you want to calculate based on the average then swap out Parameters!MyMins.Value with AVG(Fields!MyTime.Value)

= INT(Parameters!MyMins.Value / 1440) & " days " &
  INT((Parameters!MyMins.Value MOD 1440) / 60) & " hours " &
  (Parameters!MyMins.Value MOD 60) & " mins"

adjust the output to suit you formatting requirements....

The above turns 4455 minutes into the string "3 days 2 hours 15 mins"

Upvotes: 2

Related Questions