Inventory Data (Non-Cumulative) Migration from One BW system to Another BW system
Success story of SAP HANA gives a confident to consolidate geographically distributed BW systems (Regional) in to Single BW system (Global).
As a result, we have got an opportunity to work in consolidation project where entire regional BW systems data models and data’s (historical data) to be migrated in to Global BW system in massive way.
During this course of work we have come across the situation where to migrate non-cumulative historical data from Regional BW system to Global BW system.
Hence, I obliged to share my experience through this paper. This paper gives a detail insight on how to perform the Non-cumulative data migration from one BW system to another BW system or one Infocube to another InfoCube and switch future regular delta load in a new BW system or new Infocube.
- Need to know about the 0RECORDTP field which is act as a primary field to separate open stock data and change history data.
- Cube compression concept with and without marker update.
- Cube gets compressed after an initial load from 2LIS_03_BX and periodic load from underlying DSO’s. During this course of compression action System generates 0REORDDTP = 1 for those records to shows the open stock value of the inventory. Additionally for those records all time characteristics value will set to blank.
- Another set value will be maintained for the records with 0RECORDTP to ‘0’ which denotes the change history of stock value with valid time characteristics information.
Below is the detail step by step approach to perform the historical data migration for Inventory Data:
- Build a 7.X historical data flow (HDL) from Regional cube to Global cube using regional cube as data mart in Global System. Refer above mentioned diagram.
- As I said earlier, time characteristics of Open stock records are blank , hence, in the HDL flow transformation, write a logic in start routine to populate “sy-datum” value for “calday” for the records which are having blank value.
- Compress all the load request which are loaded up to date in regional inventory cube or source cube.
- First extract the open stock inventory records from regional cube using the IPAK setting as 0RECORDDTP = 1.
- Use the DTP to push these records from PSA to target. These records are maintained in the target with loading date value in all time characteristic. Since, all time characteristics derived from Cal day in the transformation using time distribution rule type.
- After success full loading of open stock records, do the compression in cube without check the “No Marker Update”.
- After success full compression, we have got same set of records in two different mode, one is 0RECORDDTP = 1 and 0RECORDDTP = 2.
- 0RECORDDTP = 1 records holds the open stock value without time characteristics, conversely, 0RECORDDTP =2 records holds the inventory stock value with loading date value in time characteristics.
- Needs to remove the 0RECORDDTP = 2 records from cube through selective deletion by giving 0RECORDDTP SID value 2 in selective deletion parameter.
- Now we have only open stock value with 0RECORDDTP = 1 with blank time characteristic value.
- Secondly, needs to migrate the change history stock value using the IPAK setting as 0ECORDDTP=0.
- Use the DTP to transfer PSA data to target with the setting of “Historical Transformation”.
- Do the data validation between Global Target and respective Regional Target.
- Once historical data migration done for the Inventory cube perform “init without” data transfer from underlying source DSO’s . Before perform this activity ensure that the data of underline source DSO’s in sync with respective regional DSO’s.
- Next day on wards the new delta records will come from underline source DSO’s to targets in new BW system.
- Preferable perform these entire activity during the BW freeze phase (Stop the BW data loads in regional BW system).
Excellent! Nice Explanation
Very good article, well thought out scenario. You could adapt and tweak this approach to implement an LSA approach in Inventory as well. Inventory data surely needs an LSA but unfortunately the standard design prohibits us from doing that.
Having said that, it must be mentioned that the approach is only applicable to BW not on HANAscenarios. If we're talking about BW-on-HANA version 7.3 or above, then the marker concept is no longer used. So this approach will work in systems where HANA is not the DB layer.
This approach is I have applied in BW environment on HANA. Hence, this approach especially applicable for HANA DB.
Well then, it is obsolete in HANA. They have a new procedure for it in HANA which has a very different behaviour. It's explained in this doc.
Good document, thanks