Professional Documents
Culture Documents
Forecast
Applies to:
Business Intelligence, Business Planning.
For more information, visit the Enterprise Performance Management homepage.
Summary
In the past, planning was very often a static process carried out once a year that intended to form the basis
for the next years execution and budgets. Dynamic environments and fast-changing business situations
force companies to think of strategies to react to changing conditions. Rolling forecasting is an ongoing
process that compares the plan with the actual and derives an expected further evolution of the plan figures.
If the deviation between plan and forecast extends beyond a certain range, the strategy has to be
reevaluated in order to take appropriate measures or adjust the strategy. Rolling forecasting should be
designed in a dynamical manner.
Author:
Nilanjan Chatterjee
Author Bio
Nilanjan Chatterjee is an Associate Consultant with Satyam computer Services Limited. Nilanjan has almost
15 months of experience on Business Process and Simulation (BPS).
Table of Contents
Dynamic Design for Rolling Forecast .................................................................................................................3
System Design....................................................................................................................................................3
Designing Variables ........................................................................................................................................3
Designing VACTUALS .................................................................................................................................................4
Designing VPLANNED.................................................................................................................................................5
System Design
The simulation of Rolling Forecast can be achieved with the help of a manual layout in which the data for the
actual posting periods should be locked for any further changes and the data for the forecast months should
be enabled for any kind of manipulation.
The display should be as follows.
By explicitly mentioning the actual and the forecast posting periods in the layout builder. This design
remains static and every month the design needs to be changed.
By creating two variables, one for actuals and another for planned, and populating the value of these
variables dynamically. This design holds well in every month.
In the above example, the posting periods 001 through 008 are locked for any changes as these posting
periods represent the actual values if I am in the month of September.
Designing the above scenario involves two steps.
Designing variables
Designing layout
Designing Variables
The design requires two variables for the purpose. One of the variables can be used to get the actual posting
periods and the other variable to get the forecast posting periods.
Following two variables can be used for the purpose.
VACTUALS
VPLANNED
Designing VACTUALS
The variable, VACTUALS, will be used for storing the actual posting periods based on the current month. If
the current month is September, then the variable should have the values from 001 to 008. The variable
would be of type user exit.
The function designed would set the variable VACTUALS (0FISCPER3) dynamically. It will first call a
function module to determine what the current fiscal period is. Next it will build the values for the closed
period in the characteristics table eto_charsel. These values will be passed back to SEM and will control the
comparison column display of the BPS layouts.
The code will look something like this:
data: l_buper
l_gjahr
l_actctr
l_plndctr
data: l_post_period
like t009b-poper,
like t009b-bdatj,
like ls_varsel-seqno,
like ls_varsel-seqno.
type /bi0/oifiscper3.
Designing VPLANNED
The variable, VPLANNED, will be used for storing the forecast posting periods based on the current month. If
the current month is September, then the variable will have the values from 009 to 012. The variable would
be of type user exit.
The function designed would set the variable VPLANNED (0FISCPER3) dynamically. It will first call a
function module to determine what the current fiscal period is. Next it will build the values for the open
periods in the characteristics table eto_charsel. These values will be passed back to SEM and will control the
comparison column display of the BPS layouts.
The code will look something like this:
data: l_buper
l_gjahr
l_actctr
l_plndctr
data: l_post_period
like t009b-poper,
like t009b-bdatj,
like ls_varsel-seqno,
like ls_varsel-seqno.
type /bi0/oifiscper3.
l_plndctr = 12 - l_actctr.
l_post_period = l_actctr.
do l_plndctr times.
add 1 to l_post_period.
ls_varsel-chanm = i_chanm.
"0FISCPER3 (VPLANNED)
ls_varsel-seqno = sy-index.
ls_varsel-sign = 'I'.
ls_varsel-opt
= 'EQ'.
ls_varsel-low
= l_post_period.
insert ls_varsel into table eto_charsel.
enddo.
endfunction.
Designing Layout
In the second screen of the Layout Builder, we need to define two rows, one with the actual posting periods
and another with forecast posting periods. It will look like this:
In the first row, with the variable VACTUALS, the comparison column should be checked. The second row
should be without comparison column checked.
This design will enable the actual posting periods to be locked from any further changes and the forecast
posting periods will be open for any kind of manipulations.