Introduction
In a BW project a typical requirement is that business wants to change or enrich Master Data. Until now this was mostly done with customized solutions like having a special aDSO working as control table with a class for master data update or doing it in the BPC Master Data Administration. Since BW/4HANA 1.0 SP 08 there is a simple solution available, which I will show in a short use case.
Scenario
In this case I will do a Master Data Planning for Cost Centers, where I want to plan some detailed information for the Company Code, the Responsible User (time-dependent) and Responsible Person (time-dependent) as well as the description (time-dependent).
Therefore, we need the following Characteristics:
- 0CO_AREA (key)
- ZCOSTCTR (key)
- 0RESP_PERS
- 0RESP_USER
- 0COMP_CODE
For creation of a Master Data Planning, the following Objects are needed:
- InfoObject
- Aggregation Level
- Query
- RSRT vs Analysis for Office
1. InfoObject [ZCOSTCTR]
ZCOSTCTR is a copy of 0COSTCENTER. This means that in the characteristics “Master Data” and “Texts” are selected and 0CO_AREA is used as compounding characteristic. There is a short and medium text, which are time- as well as language-dependent. Furthermore, ZCOSTCTR has several attributes. We want to plan 0COMP_CODE, 0RESP_PERS and 0RESP_USER.
First, the InfoObject needs to be prepared for planning. In this case preparation means, that the following characteristics for the InfoObject need to be selected:
- Usable as InfoProvider
- Planning Mode
After activation, the InfoObject can be switched between Staging and Planning, which is similar to the Load Mode and Plan Mode of a Planning ADSO. When opening “Manage attributes” the mode for the InfoObject can be switched. By default, it is set to Staging, but by clicking on Planning it can be easily changed.
In the column ‘Last Action’ it is also stated if the Master Data was loaded or planned. For loaded Master Data it is stated ‘Loading’ and for planned Master Data ‘Planning’ is shown.
This Switch is also possible in a Process Chain. With this option it is possible to combine loading of master data with the enhancement by planning. The InfoObject can be always on “Planning” and within the process chain for loading master data the InfoObject can be switched to Staging before the load and switched back to Planning after the load finished.
2. Aggregation Level [ZALC05]
After the InfoObject is prepared for planning, a new aggregation level is needed. The InfoProvider for this Aggregation Level is ZCOSTCTR.
When opening the Output tab with the InfoProvider View on the left it is now possible to select key fields of ZCOSTCTR as well as all the attributes. For planning, the system also generates a key figure for all the attributes and the texts. For taking time-dependency into consideration, the system also creates a key figure for valid from and valid to. These key figures are separated for attributes and texts, 1KYF_DATEFROM/-TO are used for the attributes and 1KYF_1TXTDATEFROM/-TO are used for the time-dependent texts. Having a key figure for the characteristics looks the same as if a characteristic is selected for being used as a key figure in a planning aDSO. Due to the fact that we already know that we want to plan the texts and the Company Code, the Person Responsible and User Responsible, only these key figures as well as the time-dependent key figures are added to the aggregation level.
Even if the texts are marked as language-dependent, it is currently not possible to do a language-dependent planning for the texts as there is no key figure generated like it is for the time-dependency.
It is also possible to have the characteristics like 0COMP_CODE in the aggregation level. At this point I would like to mention that these characteristics cannot be used in the query. The query is not able to use Attributes or Nav.-Attributes for filtering. Only the key (in this case 0CO_AREA and ZCOSTCTR) can be used in the filter.
3. Query [ZALC05_PLA_01]
On the new Aggregation Level ZALC05 a new query is created.
In the tab “General” it is important that in “Planning” on the bottom-right corner “Start Query in Input Mode” is selected.
In the tab “Sheet Definition” 0CO_AREA and ZCOSTCTR are selected in the rows and the respective key figures for 0COMP_CODE, 0RESP_PERS, 0RESP_USER and the short and medium text are selected for the columns. To enable planning for the key figures, they are set to “Input-Ready” in the “Planning” tab.
To ensure that there will be data for planning even without posted values, the settings for ZCOSTCTR need to be adapted. Therefore, ZCOSTCTR is selected and in the “General” tab I open the “Extended” settings on the bottom-right and here I change “Access Type for Result Values” to “Master Data” by clicking on the Edit Button and using the Drop-down menu.
Now I go to the “Filter” tab and add 0CO_AREA in the “Filter: Fixed Values” where I exclude the value #.
Finally, the Query can be saved.
RSRT vs. Anaylsis for Office
Now the query can be opened in the Transaction RSRT in SAP GUI. All the white cells are now editable.
I add some values for Cost Center 10001 and 20001 by simply clicking into one cell and writing into it and pressing the “Save Values” button afterwards.
Here, it is also possible to add new Master Data for ZCOSTCTR by clicking in the white cells in the very last row. As ZCOSTCTR is using 0CO_AREA as compounding characteristic, I need to enter 5000 as 0CO_AREA and 5000/50001 as Cost Center, then it can be correctly saved.
The query can also be used in Analysis for Office, here the editable cells are highlighted in yellow.
However, this is connected to some restrictions. Currently, it is not possible to enter “Valid from” or “Valid to” for both attributes and texts. When entering a date here, it is reset after saving the data. This problem is not directly linked to Master Planning but a general date-planning problem in Analysis for Office at the moment.
Even if it is possible to display new lines it is currently not possible to enter new master data here. The master data checks do not permit to enter completely new values for example for Cost Center here.