Technical Articles
Data Migration Approach for Investment Management
Hello,
Here I am documenting a recent data migration experience to migrate Project and WBS with Investment Measures to S/4Hana.
Scope of Data Migration: PS and FI experts in projects suggested SAP Best Practices to migrate only current program(s)
The requirement and scope defined by functional streams (PS and FI) are migrate only current IM Program with its positions and available Budget as of migration date and migrate only relevant Projects and WBS for IM program
Below diagram describes the steps of Data Migration with SAP Tcodes with dependency.
Data Migration Scope of Investment Management
Data Migration Steps:
- Create Investment Program Definition (IM01)
- Create Investment Program Structure (IM22)
- Change Original Program Budget (IM32)
- Create Project Definition and WBS elements (Project Builder CJ20n)
- Change Investment Program Position – Assign WBS to IM (IM12)
- Change Original Program Budget (IM32)
- Budget Distribution (IM53)
- Project Release (CNMASSSTATUS)
Step 1: Create Investment Program Definition (IM01)
Source Tables:
- IMTP – Investment programs
- IMTT – Capital Investment Program Texts
BAPIs:
- Extract: BAPI_EXPENDITUREPROGDEF_GETDTL
- Load: BAPI_EXPENDITUREPROGDEF_CREATE
Design
SAP Data Services (DS) is used to extract, transform and load. Instead of extracting tables BAPI_EXPENDITUREPROGDEF_GETDTL is used this will create the expected output schema to load using BAPI_EXPENDITUREPROGDEF_CREATE
A single job to call extract and load BAPIs which will make it Direct Transfer from Source to Target:
DS Dataflow: Create Inv Program Defn (IM01
Step 2: Create Investment Program Structure (IM11, IM22)
This Data Migration Step will Create Inv Program Position (IM11) and Creates Inv Program Structure (IM22) in one go.
Source Tables:
- IMPR – Investment Program Positions
- IMPU – Texts for cap. inv. program positions
BAPIs:
- Extract – BAPI_EXPENDITUREPROGTREE_GDVAL
- Load – BAPI_EXPENDITUREPROGTREE_CREAT
Design:
SAP Data Services (DS) is used to extract, transform and load. Instead of extracting tables BAPI_EXPENDITUREPROGTREE_GDVAL is used this will create in the expected output schema to load using BAPI_EXPENDITUREPROGTREE_CREAT
A single job to call extract and load BAPIs which will make it Direct Transfer from Source to Target:
DS Dataflow : Create/Change Inv Program Tree (IM22) with Positions (IM11)
Step 3:Change Original Program Budget (IM32)
In this step budget assigned to all Inv Positions in Program Tree
Note: As SAP best practices Business provided the CURRENT budget for each position in the Program Tree as on migration Date
Tables:
- No Direct input table was identified
BAPIs:
- Extract: BAPI_EXPENDITUREPROGTREE_GDVAL
- Load: BAPI_EXPENDITUREPROGTREE_CHVAL
Design:
SAP Data Services (DS) is used to extract, transform and load. Instead of extracting tables BAPI_EXPENDITUREPROGTREE_GDVAL is used, Since the scope is to load only current year and available budget as on migration date call function for current year(2022) and map the VALUE to File input using Lookup Function This will create in the expected output schema to load using BAPI_EXPENDITUREPROGTREE_CHVAL
Change Original Program Budget (IM32)
Note: While calling load BAPI position format changes to SAP internal format.
Query MAP – Mapping
Step 4: Create Project Definition and WBS elements (Project Builder CJ20n)
IMZO stores the IM Position to WBS Assignment Information – To select relevant WBS and Projects
Data Services JOB to extract IMZO information
Project Definition and WBS elements relevant to IM program are extracted and migrated using S/4Hana migration cockpit out of the box solution
S/4Hana Migration Cockpit Objects
Step 5: Assign WBS to IM
WBS – IM assignment can be done at WBS as well as IM Position level. In this project “Change Investment Program Position – IM12” transaction is selected to make WBS assignment.
Using Simple ECATT – IM12 transaction to assign WBS is recorded.
Blog on how to ecatt – https://blog.masterdataaficionado.com/simple-ecatt-data-migration-example/
File promat for ECATT
Step 6: Budget Distribution (IM53)
In this step IM position Budget loaded in Step 3 will be distributed to assigned WBS element.
Since IM Position Budget is current available budget will be distributed as-is to assigned WBS element.
Budget Distribution – IM53
Step 7: Project Release (CNMASSSTATUS)
When we load Project and WBS using S/4Hana Migration Cockpit – Projects are created with CRTD (Created) status to use these – Projects needs to be set to Released.
CNMASSSTATUS allows you to select Projects and Release in mass.
Release Projects – CNMASSSTATUS
Conclusion: Above steps will bring you to PS/IM master data creation and this will follow migration of open purchase orders on WBS elements.
If you find above discussion helpful please leave a comment below to encourage me to create more such content from my project experiences. Do follow my profile for future posts notification. I would highly recommend you SAP Data Services page for more technical posts.
Please use comment section to discuss if you have any questions around this topic to make this blog post more useful for all readers!