Forum Discussion

tlh's avatar
tlh
Frequent Visitor
5 years ago
Solved

Circular calculation

Hello,

 

New to PowerBI and I'm trying to do a circular calculation to determine the amount of budget remaining after expenses are taken. In Excel, this is what I'm looking to accomplish:

 

I've found a few other posts to similar things

https://community.powerbi.com/t5/Desktop/Circular-reference-calculation/td-p/213415

https://community.powerbi.com/t5/Desktop/Circular-Dependency-on-Calculated-Columns/m-p/1253826#M552651

 

But I haven't been able to understand exactly how the measures are working. 

 

Any help is appricated, and extra point if you can explain the solution like im 5yo.

The output will be used in a burndown-style chart to see how the budget is trending.

 

TIA,

Trent

  •  Hi, tlh 

    To create 2 measures to achieve it:

    _Total_Budget = 1700000

    This measure indicates how much the total budget is, and you can change it to suit your needs.

    Then, to create a calculate column below:

    Remaining =
    [_Total_Budget]
        - CALCULATE (
            SUM ( 'Table'[Expense] ),
            FILTER ( 'Table', [Date] <= EARLIER ( [Date] ) )
        )
    

    Result:

    Please refer to the attachment below for details

     

     

    Is this the result you want? Hope this is useful to you

    Please feel free to let me know If you have further questions

     

    Best Regards,
    Community Support Team _ Zeon Zheng
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

2 Replies

  • tlh , I assuming  you only have one entry of budget

     

    calculate( sum(Table[Budget]) , all(Table)) - calculate(sum(Table[expense]), filter(allselected(Table), Table[Date] <= max(Table[Date])))

     

    if they these are from different table please use Date table

     

    calculate( sum(Table[Budget]) , all(Date)) - calculate(sum(Table[expense]), filter(allselected(Date), Date[Date] <= max(Date[Date])))

     

  •  Hi, tlh 

    To create 2 measures to achieve it:

    _Total_Budget = 1700000

    This measure indicates how much the total budget is, and you can change it to suit your needs.

    Then, to create a calculate column below:

    Remaining =
    [_Total_Budget]
        - CALCULATE (
            SUM ( 'Table'[Expense] ),
            FILTER ( 'Table', [Date] <= EARLIER ( [Date] ) )
        )
    

    Result:

    Please refer to the attachment below for details

     

     

    Is this the result you want? Hope this is useful to you

    Please feel free to let me know If you have further questions

     

    Best Regards,
    Community Support Team _ Zeon Zheng
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.