Forum Discussion
Help! Time difference & percentage calculations
Hi afi_imco
Please always show your sample data in text-table format as well so that it can be readily copied.
You could try adding a new calculated column to your table as indicated below. This column will have the number of minutes of out of stock (OOS) in each line where an OOS starts (i.e. where BOOS_Stock is 0). The code assumes that each OOS is calculated per stored and per product. You can then use this column to calculate the OOS % as you please. You haven't explained how exactly that would be done.
OOSMinutes =
IF (
Table1[BOOS_Stock] = 0,
VAR _OOSEndTime =
CALCULATE (
MIN ( Table1[BOOS_AngeletAm] ),
Table1[BOOS_AngeletAm] > EARLIER ( Table1[BOOS_AngeletAm] ),
ALL ( Table1[BOOS_Stock] )
)
VAR _OOSStartTime = Table1[BOOS_AngeletAm]
VAR _OOSTimeInMins = ( _OOSEndTime - _OOSStartTime )
* 24
* 60
RETURN
_OOSTimeInMins
)
Hi AlB,
Thanks for your help...
I'm trying to improve your advice but I have a syntax error for the 'VAR'.
OOSMinutes =
IF (
OOS_Calculation[BOOS_Stock] = 0,
VAR OOSEndTime =
CALCULATE (
MIN (OOS_Calculation[BOOS_AngelegtAm]),
OOS_Calculation[BOOS_AngelegtAm] > EARLIER (OOS_Calculation[BOOS_AngelegtAm]),
ALL (OOS_Calculation[BOOS_Stock])
)
VAR OOSStartTime = OOS_Calculation[BOOS_AngelegtAm]
VAR OOSTimeInMins = (OOSEndTime - OOSStartTime)
* 24
* 60
RETURN
OOSTimeInMins
)The error:
The syntax for 'VAR' is incorrect. (DAX(IF ( OOS_Calculation[BOOS_Stock] = 0. VAR OOSEndTime = CALCULATE ( MIN (OOS_Calculation[BOOS_AngelegtAm]), OOS_Calculation[BOOS_AngelegtAm] > EARLIER (OOS_Calculation[BOOS_AngelegtAm]), ALL (OOS_Calculation[BOOS_Stock]) ) VAR OOSStartTime = OOS_Calculation[BOOS_AngelegtAm] VAR OOSTimeInMins = (OOSEndTime - OOSStartTime) * 24 * 60 RETURN OOSTimeInMins))).