Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Anonymous
Not applicable

Forecast by month aggregate to year problem

In a Power BI forecast report I would like to make a forecast based on data of previous years

 

These are my steps so far:

 

  • In 3 base measures I calculate a percentage by period: 
% Actual Same Period Year -1 =
CALCULATE (
    Transactions[Actual],
    DATEADD ( 'Calendar - Transactiondate'[Date], -1, YEAR )
)
    / CALCULATE (
        Transactions[Actual],
        PARALLELPERIOD ( 'Calendar - Transactiondate'[Date], -1, YEAR )
    )

 (for "% Actual Same Period Year -2" and "% Actual Same Period Year -3" I have similar calcualtions)

 

  • I create an average percentage on the previous percentages:
% AVG Actual Previous 3 Years =
 ( 'Transactions'[% Actual Same Period Year -1]
 + 'Transactions'[% Actual Same Period Year -2]
 + 'Transactions'[% Actual Same Period Year -3] )
 / 3 

 

  • This average percentage is multiplied by the total year budget of the current year, this way I have a forecast amount of every month in the current year:
Forecast € All Year =
CALCULATE (
 Transactions[Budget Amount],
 ALL ( Transactions[FutureBookingIndicator] ),
 ALL ( 'Calendar - Transactiondate'[MonthNr] )
)
 * Transactions[% AVG Actual Previous 3 Years]

 

  • Next I want for the months where actuals are available to see  the actual amount in the forescast measure and for the future months the calcalated forecast amounts. So I will have a mix of actual and forecast:
Forecast =
IF ( [Actual €] = 0, [Forecast € All Year], [Actual €] )

 

 So far everything works as expected, but…

 

  • Next I want to be able to aggregate the forecast to year level.

The problem is that on total year (or on a visual where months are not displayed) I only see the actual amount, which is logical because Actual is not 0 on this level.

I tried to use the HASONEFILTER option to bypass this problem but I cannot figure out what the formule on the TRUE side must be:

Forecast =
IF (
    HASONEFILTER ( 'Calendar - Transactiondate'[MonthNr] ),
    IF ( [Actual €] = 0, [Forecast € All Year], [Actual €] ),
    <TRUE>
)

 Any suggestions? Or other possible solutions?

 

1 ACCEPTED SOLUTION
v-chuncz-msft
Community Support
Community Support

@Anonymous,

 

You may use a similar way as shown here.

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

View solution in original post

3 REPLIES 3
v-chuncz-msft
Community Support
Community Support

@Anonymous,

 

You may use a similar way as shown here.

Community Support Team _ Sam Zha
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Anonymous
Not applicable

@v-chuncz-msft: Figured it out!  Thank you.

 

It works with an extra measure on top of the Forecast measure

Aggregatable Forecast=
SUMX (
    SUMMARIZE ( Transactions, 'Calendar - Transactiondate'[MonthNr] ),
    [Forecast]
)
Anonymous
Not applicable

@v-chuncz-msft, Thank you for your reply, I am having trouble to translate the suggested solution to my situation

Could you please give me another suggestion?

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors