Forum Discussion

leahYan's avatar
leahYan
Icon for Advocate II rankAdvocate II
6 years ago

Running total in matrix with dynamic switch condition

Hi,

 

I have a DAX formula to accumulate the value, running total, and the different total overtime periods:

R-Acc is the running total of Acc, R-Com is the running total of Com. Remaining is the difference of two running total.

 

If there is no data in May, the Remaining doesn't show the prior value, the column total is also blank at the right end.

 

Com measure is similar to Acc, just filtering another value in the same field

 

I tried to use a max(date) to limit the display range, but it doesn't make any change.

R-Acc =
var lastd = MAX('Query'[date])
return
IF(SELECTEDVALUE(Query[Daytype])<>"Work Day",
CALCULATE(
    [Acc],
    FILTER(
        ALL('Date'[Date]),
        'Date'[Date]<=lastd)
    )
)
 
Remaining =
SWITCH(SELECTEDVALUE(Query[Category1]),
"1.Direct Income",[R-Com]-[R-Acc],
"2.Direct Expense",if(SELECTEDVALUE(Query[Daytype])= "Work Day",BLANK(),[R-Com]-[R-Acc]),
"3.Gross Profit", [R-Com]-[R-Acc]+SUMX(FILTER(Query,[Daytype]="Work Day"),Query[GrossProfit]*Query[payrate2]/60),
"5.Net Profit",[R-Com]-[R-Acc]+SUMX(FILTER(Query,[Daytype]="Work Day"),Query[NetProfit]*Query[payrate2]/60)
)
 
eQuery and Date table relationship as below:
 

Any thoughts would be very gratefully received.

 

Thanks!

2 Replies

    • leahYan's avatar
      leahYan
      Icon for Advocate II rankAdvocate II

      Hi Greg_Deckler,

      Thank you for your reply, but I am afraid that's not the issue. The issue is when a month has no data in Acc or Com, the running total of Acc or Com is blank too, which is expecting to show the same value of the previous month.

      I read other solutions for missing values in the running total, and most of them can be solved by refer to a continuous date column in the calendar table instead of the date column in the fact table.

      I applied that in my data model, but it couldn't solve my problem.

      thank you very much.