Technical Articles
Planning Object Creation and Maintenance in SAP IBP – Part 1
In this blog post, you will learn what are the recommended approaches and relevant use cases of creating planning objects in SAP IBP.
Planning objects are a combination of attribute records. It is same as that of characteristic combination in SAP APO. When planning data is loaded in a key figure at base planning level, system creates that combination for all key figures at that planning level. For example, loading sales history in Actuals Qty @WKPRODLOCCUST will enable combination for Sales Fcst Qty @WKPRODLOCCUST as well. Only after creating a planning object, it is possible to view particular combination in Excel UI.
In cases where planning object needs to be created / extended to other period IDs and data upload at that planning level is not feasible, following methods can be used to create planning objects.
1. From Master Data Type + Attribute as a key figure
2. New Planning Object from Excel UI + Copy Operator with CREATE_TIMEPERIODS
3. System generated by operators / profiles
The scope of this post is restricted to method 1 and 2. Let’s discuss each in detail.
1. From Master Data Type + Attribute as a key figure
Recommended for: This method can be used when combination of a non-time root attribute of a planning level is same as that of combination of key attributes of a master data type.
Example: Actuals Qty @WKPRODLOCCUST has non-time root attributes – PRDID, LOCID and CUSTID. Customer Source MDT also has key attributes – PRDID, LOCID and CUSTID
Custom Configuration: Configure attribute as a key figure in customer source MDT. Add this attribute as a key figure in planning area as follows:
Attribute as a key figure configuration:
How it works: When a record is added in customer source MDT, in presence of this attribute as a key figure, it automatically creates the desired combination for all key figures at WKPRODLOCCUST. Similarly, if you want to initiate planning object with MTH time dimension, add another attribute as a key figure in the same MDT and configure MTHPRODLOCCUST as a base planning level of that attribute as a key figure.
Important Considerations: Once a combination is maintained in Customer Source MDT (with configured attribute as a key figure), planning objects are extended automatically to future periods when planning area rolls to next period. If a combination is added from Excel UI – Master Data Workbook (and no value is maintained in attribute as a key figure), planning object associated with that MDT will not be created. The data needs to be uploaded via Data Integration Jobs or through interface.
Edit : SAP recommends to limit the use of attribute as key figures. If this method is to be used, restrict from and to periods of attribute as key figures and use copy operator profile with Create Time Periods to extend the combination for entire planning horizon.
2. New Planning Object from Excel UI + Copy Operator with CREATE_TIMEPERIODS
Recommended for: (a) This method can be used when combination of non-time root attributes of a planning level is not available in any master data type. (b) Mass planning object creation is not required.
Example: AOP Price @MTHPRODCUSTCURR has non-time root attributes – PRDID, CUSTID and CURRID. There is no standard master data type available with SAPIBP1 which contains this combination as key attributes.
Custom Configuration: Configure a Copy operator with CREATE_TIMEPERIODS parameter and mention target key figures with required duration for which combination needs to be extended.
How it works:
1. Click on New Planning Object option in Excel UI.
2. Enter desired combination in planning object field. Make sure these records are a part of individual simple master data types. Click on Add.
3. Enter data for new combination that has come up. Click on save data to save this combination along with the data.
4. Run copy operator with target key figure at same planning level and CREATE_TIMEPERIODS parameter.
Important Considerations: If planning area rolls to future period, copy operator should be executed again to the new periods added because of rolling planning horizon. If new planning objects are added at aggregated level, in the absence of planning filter, it can create unnecessary combinations. For example, if planning object is created from Excel UI at Brand, LOCID, CUSTID level and no filter is applied, it will create combinations with all PRDID associated with the Brand as shown below.
Also, if key figures are conversion enabled and planning combination is created at higher level, system creates combination with all records fetched from simple MDT. For example, AOP Price is configured at MTHPRODCUSTCURR and combination is added at PROD CUST level, system creates combination with all currency records in Currency MDT. However, only those CURRID will be visible in Excel UI for which conversion is maintained between CURRID and CURRTOID.
Here, CURRTOID is USD and exchange rates are maintained with EUR, JPY and USD only.
I hope this post helps you to choose an appropriate method of planning object creation. Stay tuned for next topic – Planning Object Deletion in SAP IBP.
Nice Article and Write up!! Thanks for the detailed info.
Thanks Shashidhar!!
Hi Piyush - I followed method 1 to create combinations and it worked where I was able to see all combinations for all the KFs in that planning level with blank data for all weeks when I see data at Planning Object level but when I try to pull these KFs on Planning View Templates - I am getting message as "No Data Exist - Contact Administrator". Basically there are some KFs which are user-input so I was trying to pull those KFs and maintain directly on Planning view but that's not working.
So - do I need to run any other step after this to be able to see KFS in a planning view template? Appreciate your response!!
Thanks,
Shashidhar.
Hi Shashidhar,
If I understood the issue correctly, you are able to see planning object combination (say PRDID1, LOCID1, CUSTID1 in respective master data type (say Customer Source MDT) but same when pulled in planning view template, doesn't come up.
How are you maintaining data in MDT? Are you uploading this combination directly via Excel UI from master data workbook? If yes, make sure you also maintain a value in the attribute created for planning combination purpose.
Or upload records in that MDT via Data Integration Jobs. If you are uploading data via Web UI, you need not maintain any value in that attribute. Also, check if attribute as a key figure "From Period" and "To Period" values cover required planning horizon.
Let me know if this resolves the issue.
Regards,
Piyush
Hi Piyush - issue is solved. I was having issue with UOM which caused above mentioned issue. Once I reloaded UOM data it worked fine. Thanks for your help!!
Very useful posting Piyush.
Thanks Jeff!!
Hi Piyush
What happens if we create a combination for which no compund master data exists? Is there a way in IBP to create the compound master data once the combination is created?
As per my understanding, there is no way to automatically identify such combinations and populate records in compound master data.
To avoid such scenarios, you can further use mandatory attribute in MDT. Planners then won't be able to create planning combinations without maintaining that record in respective MDT.
Piyush,
Thanks for the detailed exposition.
Just wondering if you need to go through this detailed process to plan at a level that is part of the base level.
If the base planning level is customer-product-location-week but you want to plan at product-location-month, do you have to use Method 1 to create this as the base planning level before you can assign models?
Is Method 1 only applicable to change the periodID from say week to month?
INtriguing stuff!
Mark
Mark chockalingam If base planning level is WKPRODLOCCUST and planning objects are created at this level, you can plan at any higher/aggregated level in this case MTHPRODLOC
Piyush,
Thanks for the quick reply. Yes, I understand we can plan at any higher level and enter forecasts etc.
However, if you want to assign forecast models at that level, IBP does not find any planning objects at that level. To me it looks like the option to plan at any higher levels is simply the way to review the numbers and edit them but the actual values are stored after dis-aggregation back to the base planning level namely Week-prod-loc-cust. correct?
Comparatively, in APO if you have Month-PRODLOCCUST in the MPOS, you can assign and save models at any of the CVC levels - Prod-Month, Prod-location-month, Location-month etc.
Mark
As per my understanding, you can still generate forecast (run stat forecast models in IBP) at any aggregated level and data will get disaggregated to base planning level as you mentioned. There is no need to have planning objects created at that level.
For Assign Forecast Model functionality as well, planning object need not be created at that aggregated level. For e.g., in my planning model, there is no planning object available at CWPRODLOC. But all relevant combinations appear at this level in Assign Forecast Model fiori app. Having said that, what levels would appear in Assign forecast model fiori app depends on time level of forecast models and whether there is any such planning level defined in the planning model.
Yes Piyush. We can generate model runs at any level but it is NOT very robust.
But I found your comment intriguing. Although your base planning level is PROD-CUST-LOC-Week, are you able to assign models at PROD-LOC-Month or even PROD-LOC-Week level?
Planning levels exist for PROD-LOC-Month in the planning area except they don't show up in the model assignments screen.
planninglevel-planning area combinations with no planning objects
Hi Piyush,
Nicely articulated.
Can you please share some insights on the method "3. System generated by operators / profiles"
Hi Darshan, For e.g., Forecast Error Profile, Forecast Models, Lag-based Snapshots can create planning objects.
Hi Piyush,
I have one issue related with Planning Objects.
There are some customer group on which planning objects are created automatically but not sure how?
I have deleted multiple times but still they are re-created. What is the solution for permanent delete and they don't re-appear.
Regards,
Prabhat