Forum Discussion
LFrench
1 year agoFrequent Visitor
VARIABLE should default to "0"
I'm working on taking a count of minutes, and breaking it into days, hours and minutes. I got the majority of the DAX coding working, but if the minutes is exactly an hour (60 minutes, 120 minutes, etc), the 'Total Minutes' VAR is blank, so the result is "1 Hour, Minutes." How can I default VAR Total Minutes to "0" if it is exactly an hour.
Course Time =
VAR TotalMinutes = SUM('Course Information'[MIN])
VAR TotalHours = TotalMinutes/60
VAR TotalDays = TotalHours/24
VAR Hours = INT(TotalHours)
VAR Minutes = MOD(TotalHours,1)*60
VAR Days = INT(TotalDays)
Course Time = VAR TotalMinutes = SUM( 'Course Information'[MIN] ) VAR TotalDays = DIVIDE( TotalMinutes, 1440, 0) var days = INT( TotalDays ) Var remainingHours = MOD( COALESCE( TotalDays,0 ), 1 ) * 24 Var hours = INT( remainingHours ) Var remainingMins = MOD( COALESCE( remaingHours, 0 ), 1 ) * 60 Var mins = INT( min ) Return If( days > 0, days & " days " ) & If( hours > 0, hours & " hours ") & If( mins > 0, mins & " minutes")Hi,
While the if logic will also work you can easily do something like this:Measure 33 =var TotalMinutes = MAX('Table (52)'[Column1])var TotalSeconds = TotalMinutes*60VAR Hours = INT(TotalSeconds / 3600)var minutes = TotalMinutes-Hours*60RETURN
"hours "&Hours& " minutes "&minutes
I hope this post helps to solve your issue and if it does consider accepting it as a solution and giving the post a thumbs up!
My LinkedIn: https://www.linkedin.com/in/n%C3%A4ttiahov-00001/
3 Replies
- DekuSuper User
Course Time = VAR TotalMinutes = SUM( 'Course Information'[MIN] ) VAR TotalDays = DIVIDE( TotalMinutes, 1440, 0) var days = INT( TotalDays ) Var remainingHours = MOD( COALESCE( TotalDays,0 ), 1 ) * 24 Var hours = INT( remainingHours ) Var remainingMins = MOD( COALESCE( remaingHours, 0 ), 1 ) * 60 Var mins = INT( min ) Return If( days > 0, days & " days " ) & If( hours > 0, hours & " hours ") & If( mins > 0, mins & " minutes")- DekuSuper User
Misread the request just use
COALESCE( minutes, 0)
- ValtteriNCommunity Champion
Hi,
While the if logic will also work you can easily do something like this:Measure 33 =var TotalMinutes = MAX('Table (52)'[Column1])var TotalSeconds = TotalMinutes*60VAR Hours = INT(TotalSeconds / 3600)var minutes = TotalMinutes-Hours*60RETURN
"hours "&Hours& " minutes "&minutes
I hope this post helps to solve your issue and if it does consider accepting it as a solution and giving the post a thumbs up!
My LinkedIn: https://www.linkedin.com/in/n%C3%A4ttiahov-00001/