Getting started with the S/4Hana Migration Cockpit (OnPremise)
Overview
The S/4HANA Migration Cockpit is available from S/4HANA Release 1610 in the OnPremise Version.
As it is the first Version, i don’t have too much expectations, but i am sure we will see very interesting updates in the future.
Basically, it is a Web Based Tools to migrate Legacy Data into S/4HANA. It allows to Download predefined Excel Sheet-Templates, so you can “easily” extract legacy data into this format and upload in S/4HANA by using the Migration Cockpit. Basic Mapping Functionality is provided (e.g. Map Unit of Measure Codes and so on) but don’t expect too much here yet.
Target group seems to be smaller and medium businesses (SMB). The handling of the Import Process and Validations are made very easy (“cloud style”)
To Import the Data, the SAP Standard BAPIs are used. There is an error Log provided with information on Warnings or Errors.
As there is already a number of Standard Objects Available (see below)
for the creation of additional Migration Objects see also my Blog
Update 28.9.2017: Added 1709 Standard Content Migration Object List
Transaction Codes
LTMC Migration Cockpit
LTMOM Migration Object Modeler
SAP Notes:
Check CA-GTF-MIG / SV-CLD-MIG for predefined content problem, check CA-LT-MC for tools problem.
use the expert search https://launchpad.support.sap.com/#/mynotes?tab=Search
Existing Documentation
Added 6.7.2017:
Overview Presentation: SAP S/4HANA Migration Cockpit
Interactive Click Demo:
https://cp.hana.ondemand.com/dps/d/preview/76a9ec56a9eb6138e10000000a44147b/1610%20001/en-US/ab242557ea516359e10000000a44147b/content.htm
SAP Help
Best Practice Explorer S/4Hana OnPremise, Data Management:
Data Migration to S/4HANA from File (BH5)
Data Migration to S/4HANA Enhancements (BH4)
Migration Objects
Business Object Name | Area | Business Object Type | Migration Cockpit Object Name | Technical Object Name |
Activity Types | CO | Master data | Migration of Activity types (FILE2S4) | SIF_LSTAR_CREATE |
Cost Center | CO | Master data | Migration of Cost centers (FILE2S4) | SIF_KOSTL_MASTER |
Activity Price | CO | Master data | Migration of Activity prices (FILE2S4) | SIF_ACT_PRICE |
Internal Order | CO | Transactional data | Migration of Activity prices (FILE2S4) | SIF_INTORDER |
Profit Center | FI | Master data | Migration of Profit centers (FILE2S4) | SIF_PRCTR_MASTER |
Bank Master Data | FI | Master data | Migration of Banks (FILE2S4) | SIF_BANK_MASTER |
Customer Master | FI, SD | Master data | Migration of Customer (FILE2S4) | SIF_CUSTOMER |
Vendor Master | FI, MM-PUR | Master data | Migration of Vendor (FILE2S4) | SIF_VENDOR |
Customer Open Items | FI | Transactional data | Migration of Customer open items (FILE2S4) | SIF_AR_OPEN_ITEM |
Vendor Open Items | FI | Transactional data | Migration of Vendor open items (FILE2S4) | SIF_AP_OPEN_ITEM |
Fixed Asset incl. Balances | FI-AA | Master data + Transactional data | Migration of Fixed assets (FILE2S4) | SIF_FIXED_ASSET |
G/L Account Balances | FI | Transactional data | Migration of G/L balances (FILE2S4) | SIF_GL_OPEN_ITEM |
G/L Account Open Items | FI | Transactional data | Migration of G/L open items (FILE2S4) | SIF_GL_OPEN_ITEM |
Exchange Rate | FI | Master data | Migration of Exchange rates (FILE2S4) | SIF_EXCH_RATE |
Inventory Balances | MM-IM | Transactional data | Migration of Material inventory balances (FILE2S4) | SIF_INVENTORYBAL |
Material Master | LO-MD | Master data | Migration of Materials (FILE2S4) | SIF_MATERIAL |
Material Long texts | LO-MD | Master data | Migration of Material long texts (FILE2S4) | SIF_MAT_LONGTEXT |
Material Consumptions | LO-MD | Master data | Migration of Consumptions (FILE2S4) | SIF_MAT_CONSUMP |
Purchasing Info Record | MM-PUR | Master data | Migration of Purchasing info records (FILE2S4) | SIF_PURCH_INFREC |
Purchase Order | MM-PUR | Transactional data | Migration of Purchase orders (only open) (FILE2S4) | SIF_PURCH_ORDER |
Pricing Conditions | SD, CO, MM-PUR | Master data | Migration of Pricing conditions (FILE2S4)
(Currently Cloud Only) |
SIF_CONDITIONS |
Contracts (Purchasing) | MM-PUR | Transactional data | Migration of Purchasing contracts (FILE2S4) | SIF_CONTRACTS |
Source List | MM-PUR | Transactional data | Migration of Source lists (FILE2S4) | SIF_SOURCE_LIST |
Sales Order | SD | Transactional data | Migration of sales orders (only open) (FILE2S4) | SIF_SALES_ORDER |
Batches | QM, SD, PP-PI | Master data | Migration of Batches (FILE2S4) | SIF_BATCHES |
Bill of Material (BOM) | PP | Master data | Migration of Bill of materials (FILE2S4) | SIF_BOM |
Work Center | PP, QM | Master data | Migration of Work centers (FILE2S4) | SIF_WORK_CNTR |
Equipment | PM | Master data | Migration of Equipment (FILE2S4) | SIF_EQUIPMENT |
Equipment Task List | PM | Master data | Migration of Equipment task lists (FILE2S4) | SIF_EAM_TASKLIST |
Functional Location | PM | Master data | Migration of Functional locations (FILE2S4) | SIF_FUNC_LOC |
Characteristics | CA | Master data | Migration of Characteristics (FILE2S4) | SIF_CHARACT |
Classes | CA | Master data | Migration of Classes (FILE2S4) | SIF_CLASS |
Object List in 1709:
Business Object Name | Area | Business Object Type | Migration Cockpit Object Name | Technical Object Name |
Activity Type | CO | Master data | Activity type | SIF_LSTAR_CREATE |
Cost Center | CO | Master data | Cost center | SIF_KOSTL_MASTER |
Activity Price | CO | Master data | Activity price | SIF_ACT_PRICE |
Internal Order | CO | Transactional data | Internal order | SIF_INTORDER |
Profit Center | FI | Master data | Activity price | SIF_PRCTR_MASTER |
Bank Master Data | FI | Master data | Bank | SIF_BANK_MASTER |
Customer | FI, SD | Master data | Customer | SIF_CUSTOMER |
Customer | FI, SD | Master data | Customer – extend existing record by new organizational levels | SIF_CUST_EXTEND |
Supplier | FI, MM-PUR | Master data | Supplier | SIF_VENDOR |
Supplier | FI, MM-PUR | Master data | Supplier – extend existing record by new organizational levels | SIF_VEND_EXTEND |
Accounts Receivable (Customer) Open Item | FI | Transactional data | Accounts receivable (Customer) open item | SIF_AR_OPEN_ITEM |
Accounts Payable (Vendor) Open Item | FI | Transactional data | Accounts payable (Vendor) open item | SIF_AP_OPEN_ITEM |
Fixed Asset | FI-AA | Master data + Transactional data | Fixed asset incl. balances | SIF_FIXED_ASSET |
G/L Account Balance | FI | Transactional data | G/L balance | SIF_GL_BALANCES |
G/L Account Open/Line Item | FI | Transactional data | G/L open/line item | SIF_GL_OPEN_ITEM |
Exchange Rate | FI | Master data | Exchange rate | SIF_EXCH_RATE |
Inventory Balance | MM-IM | Transactional data | Material inventory balance | SIF_INVENTORYBAL |
Material Master | LO-MD | Master data | Material | SIF_MATERIAL |
Material Master | LO-MD | Master data | Material long text | SIF_MAT_LONGTEXT |
Material Master | LO-MD | Master data | Material consumption | SIF_MAT_CONSUMP |
Material Master | CO | Master data | Exceptional case: Material Price Chng for global currencies | SIF_MATPRICE_CHG |
Material Master | MD | Master data | Material – extend existing record by new organizational levels | SIF_MAT_EXTEND |
Material Master | CA-CLF | Master data | Material classification | SIF_CLF_MAT |
Material Master | QM | Master data | Material inspection type * | SIF_INSP_TYPE |
Material Master | SLL-LEG | Master data | Material – Commodity code | SIF_MAT_COMMCODE |
Purchasing Info Record | MM-PUR | Master data | Purchasing info record with conditions | SIF_PURCH_INF_V2 |
Purchasing Info Record | MM-PUR | Master data | Purchasing info record | SIF_PURCH_INFREC |
Purchase Order | MM-PUR | Transactional data | Purchase order (only open PO) | SIF_PURCH_ORDER |
Pricing Condition | SD, CO, MM-PUR | Master data | Pricing condition | SIF_CONDITIONS |
Contracts (Purchasing) | MM-PUR | Transactional data | Purchasing contract | SIF_CONTRACTS |
Scheduling Agreement | MM-PUR | Transactional data | Scheduling Agreement | SIF_SCHED_AGRMNT |
Source List | MM-PUR | Transactional data | Source list | SIF_SOURCE_LIST |
Sales Order | SD | Transactional data | Sales order (only open SO) | SIF_SALES_ORDER |
Sales Contract | SD | Transactional data | Sales contract | SIF_SD_CONTRACT |
Batch | QM, SD, PP-PI | Master data | Batch (if Batch is unique at material level) | SIF_BATCHES |
Bill of Material (BOM) | PP | Master data | Bill of material | SIF_BOM |
Work Center | PP, QM | Master data | Work center | SIF_WORK_CNTR |
Routing | PP | Master data | Routing | SIF_ROUTING |
Equipment | PM | Master data | Equipment | SIF_EQUIPMENT |
Functional Location | PM | Master data | Functional location | SIF_FUNC_LOC |
Maintenance Task List | PM | Master data | Equipment task list | SIF_EQUI_TL |
Maintenance Task List | PM | Master data | Functional location task list | SIF_FLOC_TL |
Maintenance Task List | PM | Master data | General task list | SIF_GENMT_TL |
Maintenance Plan | PM | Master data | Maintenance plan | SIF_MAINT_PLAN_2 |
Characteristic | CA | Master data | Characteristic | SIF_CHARACT |
Class | CA | Master data | Class | SIF_CLASS |
Commercial Project Management (CPM) | CA-CPD | Master data | CPM project | SIF_PROJECT |
Inspection method | QM | Master data | Inspection method | SIF_INSP_METHOD |
Master inspection characteristic | QM | Master data | Master inspection characteristic | SIF_MSTR_CHAR |
QM catalog code group/code | QM | Master data | QM catalog code group/code | SIF_QM_CATALOG |
Inspection Plan | QM | Master data | Inspection plan | SIF_INSP_PLAN |
QM selected set | QM | Master data | QM selected set | SIF_SELECTED_SET |
QM selected set code | QM | Master data | QM selected set code | SIF_SELSET_CODE |
TRM – Financial Transaction | FI-FSCM-TRM-TM | Transactional data | TRM – Foreign exchange spot/forward transaction – contract | SIF_TR_FX_TR |
TRM – Financial Transaction | FI-FSCM-TRM-TM | Transactional data | TRM – Foreign exchange swap – contract | SIF_TR_FX_SWAP |
TRM – Financial Transaction | FI-FSCM-TRM-TM | Transactional data | TRM – Interest rate instrument | SIF_TR_IR_INSTR |
TRM – Financial Transaction | FI-FSCM-TRM-TM | Transactional data | TRM – Interest rate swap | SIF_TR_IRDE_SWAP |
New 04/12/2017:
Nice: Sample Migration Templates (Excel Examples)
https://launchpad.support.sap.com/#/notes/2470789
(currently for S/4HANA Cloud only but still helpful)
FAQ Note on Migration Cockpit
https://launchpad.support.sap.com/#/notes/2537549
Migration Process
In the first Screen you can create or open a Migration Project.
then you can activate one or multiple migration objects
Now Open the Migration Object
you can look at the documentation of the migration object
you can Download an Excel Template.
Now fill the Excel with you data
and Upload into the Migration Cockpit
select and activate the File
now start Transfer (migrate to S/4 Hana):
First the Data is validated
when finished 100 %, click on close
now you can see the notifications (warnings/error messages):
Choose next to perform the Value Mappings (Convert Values)
if a value from the excel sheet is found for the first time, you have to confirm or add a value mapping:
enter a new Value (EV_xxx) and/or click on confirm
now click on next for the simulation and then next for the import (same procedure as validation)
all actions are performed in background (as a batch-job/SM37), but you can wait until process is finished 100 % and then immediately see the results or let it run in background and come back later.
Excel Format
The Excel Templates are in XML Format
it looks like this
xmlns:o=”urn:schemas-microsoft-com:office:office”
xmlns:x=”urn:schemas-microsoft-com:office:excel”
xmlns:dt=”uuid:C2F41010-65B3-11d1-A29F-00AA00C14882″
xmlns:ss=”urn:schemas-microsoft-com:office:spreadsheet”
xmlns:html=”https://www.w3.org/TR/REC-html40″>
HHE
Heiko Herrmann
2017-01-03T00:00:00Z
2017-02-08T14:11:35Z
HHE
16.00
SLO
MATERIAL
S4CORE 101 – 06.01.2017
EAD / 700
D
…
D1-100011-02
EN
ASF1400
E
9999
X
98
01
PCE
10
you can find several documentations in the internet:
https://msdn.microsoft.com/en-us/library/aa140066(v=office.10).aspx
https://wiki.scn.sap.com/wiki/display/Snippets/XML+TAGS+simplifies+Excel+Download
i faced problems with ‘SPACE’ for empty columns, they should be otherwise the ss:Index gets confused and the Values are linked to the wrong columns when importing into the migration cockpit, even if they are in correct order
Import Processing
It helps if you are familiar with the Standard BAPI Structures and SAP Input Data (for example how to create a material master)
Abap Skills are not required, but ABAP Debugging skills are useful for the Root Cause Analysis in cases where the Error Log isn’t enough.
The BAPI used for the Data Inport can be found in Transaction LTMOM
you can also see how the input fields are mapped.
currently i was not able to change the standard mappings, i can only add customer fields.
you can set an external Breakpoint (external as the import is always performed by a batch job)
here you can also save the data (after mapping/conversion) as testdata for SE37 (right click on toolbox) if you need to do some troubleshooting
in some cases i added an ‘implicit enhancement’ at begin of function (ABAP Enhancement Concept) in the importing BAPI to change the conversion.
(quick and dirty?)
Generated ABAP Objects
The Migration Cockpit generates ABAP Function Modules for the Conversion and the Import.
These can be Debugged (or maybe even “enhanced”?)
if you come from LSMW or other ABAP Migration Tools you will find yourself familiar shortly.
Fugr /1LT/S4H500000000000003
INCLUDE /1LT/LS4H500000000000003U01.
“/1LT/S4HIL_500000000000003
INCLUDE /1LT/LS4H500000000000003U02.
“/1LT/S4HOLC_500000000000003
INCLUDE /1LT/LS4H500000000000003U03.
“/1LT/S4HOLO_500000000000003
INCLUDE /1LT/LS4H500000000000003U04.
“/1LT/S4HACS_500000000000003
FUNCTION /1LT/S4HIL_500000000000003.
*”——————————————————————–
*”*”Lokale Schnittstelle:
*” IMPORTING
*” VALUE(IM_ALLOG) TYPE DMC_ALLOG OPTIONAL
*” VALUE(IM_DEBUG) TYPE BOOLEAN OPTIONAL
*” VALUE(IM_DEBUG_LEVEL) TYPE CHAR1 OPTIONAL
*” VALUE(IM_TEST_MODE) TYPE BOOLEAN OPTIONAL
*” VALUE(IM_ROLLBACK) TYPE BOOLEAN OPTIONAL
*” VALUE(IM_VALIDATE) TYPE BOOLEAN OPTIONAL
*” EXCEPTIONS
*” INSERT_IT_ERROR
*” LOG_ERROR
*” STOPPED_BY_RULE
*”——————————————————————–
* Project : ZSIN_MIG_001
* Subproject : ZSIN_MIG_001
* Migration Object : Z_MATERIAL_001
* Layer : Conversion layer
* Generated : 13.02.2017 07:53:07 by SENS_MM
*
* Generate time related processing = X
* Generate interlinkage processing = –
* Generate IMPORT FROM MEMORY = –
* Generate EXPORT TO MEMORY = –
* Generate LDU initialize = X
* Generate Call next function module = –
…
*
*** <__unit_0001__> ************************************
*** Targetstructure : HEADER
*** Primary relation source : S_MARA
*** Primary relation type : 1:1
*** Primary relation number : 0001
********************************************************
* CONVERSION: call BEGIN OF LOOP routine
* CONVERSION: Primary relation read
” init receiver work area
CLEAR _WA_HEADER.
LOOP AT _IT_S_MARA
INTO _WA_S_MARA
.
CLEAR _actual.
_actual-sstruct1 = ‘S_MARA’.
_actual-sddicname = ”.
* CONVERSION: Init receiver work area
CLEAR _WA_HEADER .
CLEAR l_mapping_error.
* CONVERSION: Init SKIP_TRANSACTION
_FLG_SKIP_TNX_ = FALSE.
* CONVERSION: Increment transaction count
= + 1.
* CONVERSION: init SKIP_RECORD flag
_FLG_SKIP_REC_ = FALSE.
…
ENDIF.
* CONVERSION: call BEGIN OF RECORD routine
PERFORM _BEGIN_OF_RECORD_0001_.
* CONVERSION: call field processing routine
IF _FLG_SKIP_REC_ = FALSE.
PERFORM _CONVERT_0001_.
ENDIF.
* BWP: Increment record count
HEADER_NO = HEADER_NO + 1.
IF _FLG_SKIP_REC_ = FALSE.
…
FORM _CONVERT_0002_.
*— RECEIVER: NOAPPLLOG
PERFORM _RULE_MOVE_OP
USING
_WA_VI0001_NOAPPLLOG-NOAPPLLOG
‘X’.
ENDFORM.
FORM _CONVERT_0003_.
*— RECEIVER: FUNCTION
PERFORM _RULE_MOVE_OP
USING
_WA_T01_HEADDATA-FUNCTION
‘INS’.
*— RECEIVER: IND_SECTOR
PERFORM _RULE_CVT_MBRSH_S
USING
_WA_T01_HEADDATA-IND_SECTOR
_WA_S_MARA-MBRSH.
*— RECEIVER: MATL_TYPE
PERFORM _RULE_CVT_MTART_S
USING
_WA_T01_HEADDATA-MATL_TYPE
_WA_S_MARA-MTART.
*— RECEIVER: BASIC_VIEW
PERFORM _RULE_SET_X_IF_NOT_INIT_S
USING
_WA_T01_HEADDATA-BASIC_VIEW
_WA_S_MARA_CUST-INDICATOR_K.
*— RECEIVER: SALES_VIEW
PERFORM _RULE_SET_X_IF_NOT_INIT_S
USING
_WA_T01_HEADDATA-SALES_VIEW
_WA_S_MARA_CUST-INDICATOR_V.
*— RECEIVER: PURCHASE_VIEW
PERFORM _RULE_SET_X_IF_NOT_INIT_S
USING
_WA_T01_HEADDATA-PURCHASE_VIEW
_WA_S_MARA_CUST-INDICATOR_E.
*— RECEIVER: MRP_VIEW
PERFORM _RULE_SET_X_IF_NOT_INIT_S
USING
_WA_T01_HEADDATA-MRP_VIEW
_WA_S_MARA_CUST-INDICATOR_D.
*— RECEIVER: FORECAST_VIEW
PERFORM _RULE_SET_X_IF_NOT_INIT_S
USING
_WA_T01_HEADDATA-FORECAST_VIEW
_WA_S_MARA_CUST-INDICATOR_P.
*— RECEIVER: WORK_SCHED_VIEW
PERFORM _RULE_SET_X_IF_NOT_INIT_S
USING
_WA_T01_HEADDATA-WORK_SCHED_VIEW
_WA_S_MARA_CUST-INDICATOR_A.
*— RECEIVER: PRT_VIEW
PERFORM _RULE_SET_X_IF_NOT_INIT_S
…
FUNCTION /1LT/S4HOLO_500000000000003.
*”——————————————————————–
*”*”Lokale Schnittstelle:
*” IMPORTING
*” VALUE(IM_TEST_MODE) LIKE EDITSTRUC-CHANGED OPTIONAL
*” VALUE(IM_BEHAVIOUR) TYPE NUM1 DEFAULT 1
*” EXPORTING
*” VALUE(ET_MESSAGES) TYPE DMC_FM_MESSAGES_T
*” CHANGING
*” VALUE(CT_PAYLOAD) TYPE DMC_PAYLOAD_TAB
*” VALUE(XT_RUN_STAT) TYPE DMC_T_RUN_STAT OPTIONAL
*” EXCEPTIONS
*” COMMUNICATION_FAILURE
*” SYSTEM_FAILURE
*” NO_AUTHORIZATION
*”——————————————————————–
* Project : ZSIN_MIG_001
* Subproject : ZSIN_MIG_001
* Migration Object : Z_MATERIAL_001
* Layer : Outer layer out (Function Module)
* Generated : 13.02.2017 07:53:34 by SENS_MM
*
Job-Controller Functions: (for Debugging purposes)
FORM EXECUTE_LOAD SAPLDMC_DTL LDMC_DTLU25
METHOD START_ACTIVITY CL_DMC_WDA_MIG_JOBS===========CP CL_DMC_WDA_MIG_JOBS===========CM003
further Tips
Structure XXXX: Number of recipient records generated 0000000000 (or less than in input file)
reason:
the Migration Cockpit is storing all created objects in Table DMC_FM_RESTART, so if your object number, for example material number, is in this table, it will be skipped and not imported again.
you can delete the entry with transaction code se16
also if a job with the name /1LT/LOAD… is scheduled or already running, the import will not start
(but shows no error message)
verify with SE37
Check from ABAP Coding
START_DATA_LOAD (CL_DMC_WDA_MIG_CONTR) CHECK cl_dmc_act_rec=>get_active_and_scheduled_jobs( iv_ext_id = lv_ext_id
iv_activity_type = cl_dmc_act_rec=>…
for Material Views Check Note
2145027 – FAQ: Maintenance status in data transfer
Open Items
Export Data from R/3 Source System? in the online help there is a remark: In the ABAP-based SAP source system, you have installed the DMIS add-on. You can download the add-on from the SAP Software Download Center at https://support.sap.com/swdc using the following path: Installations and Upgrades A – Z Index L SAP LT Replication Server SAP LT Replication Server 2.0 .
how can i export the data for the Migration Cockpit?
Best-Practice how to fill the Excel/XML Files with legacy data
The Excel-Templates are very nice, Examples with Best-Practice Data would help understanding how to fill the values.
how to create Additional Mapping Rules like we know this from LSMW?
Create Additional Migration Objects
Create Contact Persons for Customers (i could assign them to the Customer, but i had to to a workaround to create the Contact Person’s Business Partner Number)
Mass/Data, Performance, parallel Processing, memory consumption, limitations…
strangely i could not find any oss notes, nor any blogs, is nobody using the tool yet?
so maybe i will write another Blog…
New NetWeaver Information at SAP.com
Very Helpfull