cancel
Showing results for 
Search instead for 
Did you mean: 

Key Figure Disaggregation by Attributes

maria_lorenzo
Explorer
0 Kudos

Hello Experts,

Sorry for the long question.

I'm trying to understand the Disaggregation logic that IBP is applying in our test system but i need some help to clarify the behaviour and results. I'm sorry if the question is very basic but i couldn't find another question/solution in the community.

I'm currently using a copy of the SAPIBP1 Planning area and i'm editing the Consensus Demand KF to be used for Infinite Heuristics calculations.

KF definition is the following: Aggregation Mode "Sum", Disaggregation Mode "Equal Distribution", Proportionality "Same KF, Stored Values", Period Weight Factor "WEEKWEIGHT"

Now, based on the above definition, i am expecting that anytime i edit the KF value at a certain planning level, the value will be equally distributed to the below planning level in terms of time and attributes. Below a numerical example of my expected behaviour which disaggregates from MonthProduct to MonthProductCustomer for an existing equally distributed values.

Before changes

Product ID M1

ID1 100

Disaggr.

Product ID Cust ID M1

ID1 C1 25

ID1 C2 25

ID1 C3 25

ID1 C4 25

After changes (M1 100->200)

Product ID M1

ID1 200

Disaggr.

Product ID Cust ID M1

ID1 C1 50

ID1 C2 50

ID1 C3 50

ID1 C4 50

This behaviour i could verify if i manually input the initial proportional values by ProductCustomerMonth.

However, when i have the starting values at customer ID level that are not equally distributed, changes at productmonth level are disaggregated following the existing proportions and not an equal distribution, is it the standard behaviour of IBP? Below the numerical example.

Before changes

Product ID M1

ID1 100

Disaggr.

Product ID Cust ID M1

ID1 C1 20

ID1 C2 20

ID1 C3 30

ID1 C4 30

After changes (M1 100->200)

Product ID M1

ID1 200

Disaggr.

Product ID Cust ID M1 (Expected)

ID1 C1 40 (50)

ID1 C2 40 (50)

ID1 C3 60 (50)

ID1 C4 60 (50)

The above proportional distribution is happening also when "Before changes" condition has no values in the KF (set as 0 on excel add-in), therefore making it impossible to understand where the customer ID proportional percentage is being calculated from.

Is there a way to define in the system an disaggregation ratio by attribute that i am not aware of? How can i calculate without uncertanties what the split ratio will be from an higher planning level to the lower one not only on time perspective but also by different attributes (in my example is customer, but what about customer region, etc...)?

In addition to that, does the Copy Operatior function get influenced by any of the above?

Sorry again for the long post and thank you very much for the support.

Best Regards

Accepted Solutions (0)

Answers (1)

Answers (1)

ayanbishnu1981
Active Contributor

Hello maria_lorenzo

Although I didnt understand fully what you want, but I do get the fact that you are not sure as to how the dissaggregation in KF works in IBP. First of all the Disaggregation Mode can be either equal or copy value and it based on the aggregation mode that we select. For e.g for aggregation mode SUM Disaggregation Mode will always be Equal, for AVG, MAX & MIN Disaggregation Mode will always be Copy values. Only For Custom aggregation mode you can choose the Disaggregation Mode.

The Disaggregation Mode decides how a value at an AGG level will be carried down vertically (by planning objects) and horizontally (by periods) whereever applicable. But how this carried down value will be allocated vertically is determined by Proportionality and horizontally by Period Weight Factor.

For e.g at PRODLOC level you have a value 100 that needs to be Disaggregated to PRODLOCCUST level ( which is the base PL of the KF). If your Disaggregation Mode is copy then system decides that 100 is the minimum allocated value that need to go down vertically by planning objects to the PRODLOCCUST and Proportionality determines which all PRODLOCCUST combination is eligible to get the value of 100. So in this case if Proportionality "Same KF, Stored Values" and assuming that you have C1, C2 and C3 as customers with C1 and C2 having values and C3 as null then both C1 and C2 will get 100 each and C3 null. If Proportionality "No Proportional Disaggregation" then C1, C2 and C3 will get a value of 100 each

If your Disaggregation Mode is equal then system decides that 100 will the max aggregated value and Proportionality determines which all PRODLOCCUST combination is eligible to get a percentage of that aggregate value 100. The above logic of copy value apply with a difference that the value of 100 will be splitted based on proportion and If Proportionality "No Proportional Disaggregation" the value 100 is splitted equally among C1, C2 and C3.

Coming to the last part of your question. Yes it is possible to define disaggregation ratio by attributes in a KF. for that Proportionality has to be "Disaggregation Expression" and in the expression window you have to provide the attribute ID, but that attribute has to be a part of the base planning level of the KF.

Hope I am able to explain

maria_lorenzo
Explorer
0 Kudos

Hello ayanbishnu1981

sorry for my late reply and unclear question. However you explained exactly the point I was looking for.

It is a very clear explanation of the disaggregation rules, I was able to grasp the differences of the settings in the KF.

So, correct me if I'm wrong, as my KF is currently set as "Aggregation Mode: SUM" and "Proportionality: Same KF, Stored Values", the value I input at PRODLOC level will be disaggregated on PRODLOCCUST level based on the proportionality calculated from the currently stored values (i.e. the KF value associated to C1,C2,C3), and replacing them with the new amount.

What is not clear to me is that in my system, when I do the following steps:

  1. set the PRODLOCCUST value as 0 for C1/C2/C3 and save
  2. change the aggregated amount at PRODLOC level
  3. trigger the disaggregation again to the PRODLOCCUST level

the system is sometimes applying a certain proportion % (instead of a equal distributed %) which I could not understand.

There is a way to check which kind of proportionality calculation the system is performing on disaggregation?

My current guess is that the system is either taking the proportion from a historical value (for the same period) or from a different period (but same customers).

Hope i was able to explain in a clearer way.

Thank you again for your time and best regards.