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%20Migration%20Scope%20of%20Investment%20Management

Data Migration Scope of Investment Management

Data Migration Steps:

  1. Create Investment Program Definition (IM01)
  2. Create Investment Program Structure (IM22)
  3. Change Original Program Budget (IM32)
  4. Create Project Definition and WBS elements (Project Builder CJ20n)
  5. Change Investment Program Position – Assign WBS to IM (IM12)
  6. Change Original Program Budget (IM32)
  7. Budget Distribution (IM53)
  8. 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%20Job%3A%20Create%20Inv%20Program%20Defn%20%28IM01

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:

Create/Change%20Inv%20Program%20Tree%20%28IM22%29%20with%20Positions%20%28IM11%29

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%20Original%20Program%20Budget%20%28IM32%29

Change Original Program Budget (IM32)

Note: While calling load BAPI position format changes to SAP internal format.

Query%20MAP%20-%20Mapping

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%20Services%20JOB%20to%20extract%20IMZO%20information

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%20Migration%20Cockpit%20Objects

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.

This will be performed manually to assign budget from 4th level position to WBS element as shown in the screenshot below.Budget%20Distribution%20-%20IM53

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%20Projects%20-%20CNMASSSTATUS

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!