IBP Functions
IBP Functions
• 1st Parameter (Mandatory): It is always the input key figure at the input planning level. The value must be surrounded
by double quotation marks.
• 2nd Parameter (Mandatory): It is the aggregation mode
Possible values: SUM, AVG, MIN, MAX, COUNT, and STDDEV.
• 3rd Parameter (Mandatory): It is the direction of cumulative aggregation
Possible values: FORWARD (year-to-date calc)/ BACKWARD (year-to-go calc).
• 4th Parameter (Mandatory): It is the horizon for calculation
Possible values: PAST, PASTCURRENT, PASTCURRENTFUTURE, CURRENT, CURRENTFUTURE, and FUTURE;
If only one key figure is used for cumulative aggregation, regardless of the horizon, the PASTCURRENTFUTURE value is
used for this parameter.
• 5th Parameter (Optional): Time profile level at which the cumulative aggregation should restart.
Possible values: Positive integers that correspond to the time profile levels of the time profile assigned to the planning
area. Quotation marks mustn't surround this parameter value.
Copyright © 2020 Accenture. All rights reserved. 3
1. IBP_CAGGR
Business Cases:
Used for typical cross-period calculations such as: Projected stock, year-to-date and year-to-go calculations, or cumulative
average.
Configuration: Year to date sales qty
The ‘YTD Sales qty’ KF value in Feb 2022 will be the summation of ‘Actual Sales after returns’ KF values for the months Jan
2022 and Feb 2022, and so on.
The ‘Actual sales after returns’ KF value for Jan 2021 will be period shifted by 12 time buckets, here month, and will be
populated in Jan 2022 as KF value in the KF ‘LYSM Sales qty’
In case of TW 36, offset is 0 and hence start of aggregation is TW 36. As duration is 2 weeks, stat forecast is aggregated till
TW 37.
In case of TW 39a, offset is -1 and hence start of aggregation is TW 38. As duration is 2 weeks, stat forecast is aggregated
till TW 39a.
Second Parameter
2nd parameter: maximum number of time periods (optional)
Value of input key figure is not NULL
The IBP_LAST_VALUE function returns the actual value of the input key figure.
Value of input key figure is NULL
Syntax: IBP_LPA("INPUTKFID@INPUTPLEVEL")
Configuration:
Last period aggregation must have exactly one input parameter, which is the key figure to be aggregated. This key figure
must be the same as the input of the calculation definition. The input key figure can be stored and calculated as well. You
cannot use IBP_LPA function without an input key figure as no defualt value is provided. The result of last period
aggregation is written to the output key figure.
Last period aggregation cannot be used in a REQUEST level calculation.
In this example, the input key figure shows the inventory level of a product on a daily basis.
Copyright © 2020 Accenture. All rights reserved. 17
5. IBP_LPA
Excel View:
Then, on Technical Week level, we can calculate the last period Actuals Qty for all time profile levels that are built on
technical week.
The IBP _RAGGR function has five mandatory parameters and one optional parameter.
1st: input key figure at input planning level (mandatory)
2nd: aggregation type (mandatory)
3rd: start of rolling aggregation (mandatory)
4th: duration of rolling aggregation (mandatory)
5th: calculation horizon (mandatory)
6th: restart of rolling aggregation (optional)
Note:
The value of the 1st parameter must be surrounded by double quotation marks
The values of the 2nd and 5th parameters must be surrounded by two pairs of single quotation marks. A double
quotation mark instead of two single quotation mark will result in an error during activation
Configuration:
In this example, you can calculate the summary of the statistical forecast for the previous, actual, and upcoming technical
weeks.
In case of TW 40, offset is -1 and hence start of aggregation is TW 39a. As duration is 3 weeks, stat forecast is aggregated
till TW 41.
When calculating coverage, values of the third parameter are aggregated with a SUM for all time periods where the second
parameter covers the amount of the first parameter. If the second parameter covers only a fraction of the amount of the
first parameter for a given time period, the same fraction of the third parameter in the given time period is included in the
aggregation.
This calculation will also consider the weeks having zero demand. For instance, the projected stock in the 44 th week needs
to cover 10 days of demand which will cover the entirety of 44 th and the 45th week, but the 45th week has zero demand.
Hence the projected stock is 201 which is the demand of 44 th week.
Syntax: ZPROJCOVERAGEINDAYS@WKPRODLOC =
IBP_COVERAGE("ADJUSTEDDEMAND@WKPRODLOC","INVENTORYCORRECTION@WKPRODLOC",1,''NEXTBUCKET'',''IGNORE
ZEROSTOCK'',''CURRENTFUTURE‘’)
Explanation: In this case, the coverage function is used to calculate the number of weeks the inventory can cover the
demand. This calculation ignores the time buckets where there is zero demand. For instance, in TW 44a, the inventory
(220) skips the current week and covers the entire demand for next week (TW 44b) and partial demand of TW 45.
Other
IBP FUNCTIONS
Parameters of the Calendar (IBP_CALENDAR) Function: The IBP_CALENDAR function has two mandatory parameters:
• 1st parameter: input key figure at input planning level: The first parameter of the IBP_CALENDAR function is always
the input key figure at the input planning level, for example, DEMAND@DAYPRODLOC. It must be a read-only key figure.
The value must be surrounded by double quotation marks.
• 2nd parameter: calendar attribute: The second attribute of the IBP_CALENDAR function is a calendar attribute. It must
be available at the planning level of the input key figure and must be assigned to a master data type.
It must be uploaded with values (calendar IDs) that are imported from SAP ERP and define working and non-working days.
The value must be surrounded by double quotation marks.
NOTE: We have used the same ID, which is in the PLANNING CALENDARS App. Here we have used ’01’ i.e., Germany
(Standard)
Copyright © 2020 Accenture. All rights reserved. 38
9. IBP_CALENDAR
Excel View:
In the below Planning view, number 1 denotes workday while 0 denotes a non-working day. Please note this should be in
alignment to the planning calendar of Germany as we used ‘01’as ID.
Excel View:
NOTE:
Prior to IBP_CURRENT_VALUE function being introduced; We had to perform custom calculations to take the current
period value and bring Time Dependent to Time Independent. With this new IBP_CURRENT_VALUE function, this
configuration can be avoided.
Excel View:
The above planning view shows by using the current value function, whatever the value in current month it is populated in
all weeks
NOTE:
We cannot use the IBP_CURRENT_VALUE function without an input key figure as no default value is provided.
If the current value of input key figure is Zero or NULL or Empty, the output of current value function will be same as
input key figure.
We use the IBP_GENERATE_MISSING_TP function to generate the missing time periods. As a result, the following data set
is generated. The existing input key figure values stay the same, and the missing time periods are generated with a default
NULL value for the calculation horizon.
Syntax:
KF1@PLANLEVEL = IBP_WEIGHTEDAVG(KF1@PLANLEVEL, KF2@PLANLEVEL or ATTRIBUTE, TYPE OF NUMERATOR)
For the week T40 at Location 3710, weighted price is calculated as follows: (90*100 + 110*200) / (90+110) = 155
For the week T40 at Location 3710, weighted price is calculated as follows: (15517 + 15622) / (90+110) = 156
Aggregated Level:
Configuration:
Scenario 3: We have aggregated the ACTUALQTY key figure to product level and calculated standard deviation.
Excel View:
Configuration:
In the above figure, we can see the KF ZActual Quantity round down to the value having without/ Zero decimal places in
KF Actuals Quantity Rounddown.
Configuration:
In the above figure, we can see the KF ZActual Quantity round down to the value having 1 decimal place in KF Actuals
Quantity Rounddown.
Configuration:
In the above figure, we can see the KF ZActual Quantity rounds down by 1 decimal places to the left of decimal point in
KF Actuals Quantity Round
Business Case:
If the business needs to round down the value to the specific value left or right to the decimal place, have to use the
Rounddown function by maintain the integer to get a desired decimal place.
Scenarios:
There are some scenarios based on integer value,
Configuration:
In the above figure, we can see the KF ZActual Quantity round down to the value having without/ Zero decimal places in
KF Actuals Quantity Rounddown.
Configuration:
In the above figure, we can see the KF ZActual Quantity round down to the value having 1 decimal place in KF Actuals
Quantity Rounddown.
Configuration:
In the above figure, we can see the KF ZActual Quantity rounds down by 1 decimal places to the left of decimal point in KF
Actuals Quantity Round
Scenarios:
Configuration:
In the above figure, we can see the function will trim BRND from attribute Brand ID and will return the remaining string.
As per the condition if brand is BRND300, it will populate Dependent demand value in ZVLTRIM KF.
Configuration:
Excel View:
LTRIM function will remove the whitespace from left side, will return IBP-300 and according to KF calculation will
populate Independent Demand in ZVWLTRIM KF, if the condition proves to be valid.
Business Cases: Supposedly if a Planner wants to populate some data for any specific products belonging to any specific
series, then, he can use RTRIM function to remove the suffix present in the form of any code and populate the data. For
example- If they want to bring the data for product with series IBP, then they can use RTRIM function to trim- Product
Description to validate the series and populate data.
Scenarios:
Configuration:
In the above figure, we can see the function will trim 300 from attribute Brand ID and will return the remaining string. As
per the condition if brand is BRND300, it will populate Independent demand value in ZVRTRIM KF.
Configuration:
Excel View:
According to the logic, RTRIM function will firstly trim ‘300-MUSIC DOCKS’ from Product Family from the right side. As
there is still a space after Family, RTRIM function will again remove the whitespace, then validating it with String
“Family”. If it matches, then Dependent Demand will be populated else Independent Demand.
Copyright © 2020 Accenture. All rights reserved. 92
22. EXP
EXP function returns the result of the constant e raised to the power of a number. The EXP function has one mandatory
parameter, which is the power that e is raised to. It can be an expression (with a numeric output), a key figure, an integer
type attribute, or a numeric constant.
Business Cases: If the business needs to have a KF which would indicate the value as Some power of the source KF then
we can achieve it by this syntax.
2.
1.
2.
Business Cases: If the business needs to have a KF which requires a calculation source KF then we can achieve it by this
syntax.
Excel View: