Forum Discussion

YeldarR's avatar
YeldarR
Frequent Visitor
4 years ago
Solved

Make a total for maxx values (Balance sheet)

Hello, community. I've created Balance Sheet with the following formula:
Return actual balance =
VAR maxDate = MAX('BS_actuals'[date_key])

RETURN
MAXX(FILTER(BS_actuals,[date_key]=maxDate),[value])
 
This way, when choosing a range of dates, it didn't sum up all the balances, but returned the balance for the latest date of selected dates range. That worked for 1 level of balances. However, when I add the level above (grand level), it doesn't sum up but get the maxx amount for the entire level.

I've checked similar topic, but couldn't do the same for my case. Please help.

  • YeldarR , Try like

     

    Return actual balance =
    VAR maxDate = MAXX(allselected('BS_actuals') , 'BS_actuals'[date_key])

    RETURN
    SUMX(FILTER(BS_actuals,[date_key]=maxDate),[value])

     

    or

     

     

    Return actual balance =
    VAR maxDate = MAXX(allselected('BS_actuals') , 'BS_actuals'[date_key])

    RETURN
    SUMX(values(BS_actuals[Level1]), calculate( MAXX(FILTER(BS_actuals,[date_key]=maxDate),[value]) ) )

4 Replies

  • YeldarR , Try like

     

    Return actual balance =
    VAR maxDate = MAXX(allselected('BS_actuals') , 'BS_actuals'[date_key])

    RETURN
    MAXX(FILTER(BS_actuals,[date_key]=maxDate),[value])

     

     

    If this does not help
    Can you share sample data and sample output in table format? Or a sample pbix after removing sensitive data.

    • YeldarR's avatar
      YeldarR
      Frequent Visitor

      Thank you. Nope doesn't work. It works only for level1 layout, but level2 layout show maxx instead of sum.

      BS actuals goes the following:

       

      BS layout:

       

       

      • amitchandak's avatar
        amitchandak
        Super User

        YeldarR , Try like

         

        Return actual balance =
        VAR maxDate = MAXX(allselected('BS_actuals') , 'BS_actuals'[date_key])

        RETURN
        SUMX(FILTER(BS_actuals,[date_key]=maxDate),[value])

         

        or

         

         

        Return actual balance =
        VAR maxDate = MAXX(allselected('BS_actuals') , 'BS_actuals'[date_key])

        RETURN
        SUMX(values(BS_actuals[Level1]), calculate( MAXX(FILTER(BS_actuals,[date_key]=maxDate),[value]) ) )