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

The Power BI Data Visualization World Championships is back! It's time to submit your entry. Live now!

Reply
Anonymous
Not applicable

Forecasting

Hi!
I have calculated cumulative forecast and cumulative recorded sales.
I need help with a DAX-expression to alter my forecast based on the results of the recorded sales:

Example:
Original forecast says 10$ per month, cumulative this will give january 10$, february 20$, march 30$ etc... Resulting in cumulative 120$ by the end of the year.

I want to alter that forecast. If sales for january turns out to be only 5$, i want my cumulative forecast by the end of the year to be 115$.

What I want to do is that for every (date) with a recorded sale, the forecast for the year should be the historicly recorded sales + remaining original forecast for the remaining (dates)

Thank you!

1 ACCEPTED SOLUTION
Anonymous
Not applicable

I solved it myself!

The three steps are measures and works for me. My "Prognosis allocation" in step 2 is a calculated measure which contains a monthly budget distributed over every calender date.

 

1. Accumulate Sales (where [Sales] is a sum of sales from my sales column.)


Acc. Sales =
   VAR CurrentDate =
      CALCULATE(
         LASTNONBLANK('Data Sales'[Date]; [Sales]);
      ALL('Data Sales'[Date])
)
RETURN
   CALCULATE([Sales];
      FILTER( ALLSELECTED('Calender'[Date]);
         'Calender'[Date]<=CurrentDate))

 

2. Calculate remaining forcast based on the last date of your sales

 

Remaining forcast =
   VAR CurrentDate =
      CALCULATE(
         LASTNONBLANK('Calender'[Date]; 'Calculations Accumulations'[Acc. Sales]);
      ALL('Calender'[Date])
)
RETURN
   CALCULATE(
      [Prognosis allocation];
         FILTER(VALUES('Calender'[Date]);'Calender'[Date]>CurrentDate))

 

3.

Final forcast =

   CALCULATE(

      'Calculations Accumulations'[Acc. Sales]+[Remaining forcast];
         FILTER( ALLSELECTED('Calender');
            'Calender'[Date]<=MAX('Calender'[Date])))

 

 

View solution in original post

2 REPLIES 2
Anonymous
Not applicable

I solved it myself!

The three steps are measures and works for me. My "Prognosis allocation" in step 2 is a calculated measure which contains a monthly budget distributed over every calender date.

 

1. Accumulate Sales (where [Sales] is a sum of sales from my sales column.)


Acc. Sales =
   VAR CurrentDate =
      CALCULATE(
         LASTNONBLANK('Data Sales'[Date]; [Sales]);
      ALL('Data Sales'[Date])
)
RETURN
   CALCULATE([Sales];
      FILTER( ALLSELECTED('Calender'[Date]);
         'Calender'[Date]<=CurrentDate))

 

2. Calculate remaining forcast based on the last date of your sales

 

Remaining forcast =
   VAR CurrentDate =
      CALCULATE(
         LASTNONBLANK('Calender'[Date]; 'Calculations Accumulations'[Acc. Sales]);
      ALL('Calender'[Date])
)
RETURN
   CALCULATE(
      [Prognosis allocation];
         FILTER(VALUES('Calender'[Date]);'Calender'[Date]>CurrentDate))

 

3.

Final forcast =

   CALCULATE(

      'Calculations Accumulations'[Acc. Sales]+[Remaining forcast];
         FILTER( ALLSELECTED('Calender');
            'Calender'[Date]<=MAX('Calender'[Date])))

 

 

Anonymous
Not applicable

Hi!
I have calculated cumulative forecast and cumulative recorded sales.
I need help with a DAX-expression to alter my forecast based on the results of the recorded sales:

Example:
Original forecast says 10$ per month, cumulative this will give january 10$, february 20$, march 30$ etc... Resulting in cumulative 120$ by the end of the year.

I want to alter that forecast. If sales for january turns out to be only 5$, i want my cumulative forecast by the end of the year to be 115$.

What I want to do is that for every (date) with a recorded sale, the forecast for the year should be the historicly recorded sales + remaining original forecast for the remaining (dates)

Thank you!

Helpful resources

Announcements
FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.