Vous êtes sur la page 1sur 29

ProductsProducts

IndustriesIndustries
SupportSupport
TrainingTraining
CommunityCommunity
DeveloperDeveloper
PartnerPartner
AboutAbout

Search

Miguel Piz arro Berumen

o
o
o
o

o
o
o

Home / Community /Blogs
Actions
Getting started with the S/4Hana Migration Cockpit
(OnPremise)
February 28, 2017 | 8,930 Views |

Jrg Knaus
more by this author
SAP S/4HANA migration cockpit
SAP S/4HANASAP S/4HANA migration object modeler

share 1
share 1
tweet
share 74
like8

Follow

Overview
The S/4HANA Migration Cockpit is available from S/4HANA Release 1610 in the OnPremise
Version.
As it is the first Version, i dont 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 dont 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
https://blogs.sap.com/2017/06/20/discover-the-s4hana-migration-cockpit-migration-object-modeler-
onpremise-nltmom/
Transaction Codes
LTMC Migration Cockpit

LTMOM Migration Object Modeler

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
https://help.sap.com/doc/PRODUCTION/bf1d5c82ea1c45ba8f1d7d1f7757f04d/1610%20001/en-
US/frameset.htm?8f97f0b407024465a283809f0bbe000c.html
https://help.sap.com/doc/PRODUCTION/bf1d5c82ea1c45ba8f1d7d1f7757f04d/1610%20001/en-
US/frameset.htm?9a02076c76354f6a93aefc9bdf943e68.html
Best Practice Explorer S/4Hana OnPremise, Data Management:

Data Migration to S/4HANA from File (BH5)


Data Migration to S/4HANA Enhancements (BH4)
https://support.sap.com/content/dam/SAAP/Sol_Pack/BP_OP_ENTPR_S4HANA1611_DEV3/BP_O
P_ENTPR_S4HANA1611_DEV3_Content_Library_EN_DE.htm
Migration Objects

Business Object
Area Business Object Type Migration Cockpit Object Name Technical Object Name
Name

Migration of Activity types


Activity Types CO Master data SIF_LSTAR_CREATE
(FILE2S4)
Business Object
Area Business Object Type Migration Cockpit Object Name Technical Object Name
Name

Migration of Cost centers


Cost Center CO Master data SIF_KOSTL_MASTER
(FILE2S4)

Migration of Activity prices


Activity Price CO Master data SIF_ACT_PRICE
(FILE2S4)

Migration of Activity prices


Internal Order CO Transactional data SIF_INTORDER
(FILE2S4)

Migration of Profit centers


Profit Center FI Master data SIF_PRCTR_MASTER
(FILE2S4)

Bank Master Data FI Master data Migration of Banks (FILE2S4) SIF_BANK_MASTER

Migration of Customer
Customer Master FI, SD Master data SIF_CUSTOMER
(FILE2S4)

FI, MM-
Vendor Master Master data Migration of Vendor (FILE2S4) SIF_VENDOR
PUR

Customer Open Migration of Customer open


FI Transactional data SIF_AR_OPEN_ITEM
Items items (FILE2S4)

Migration of Vendor open items


Vendor Open Items FI Transactional data SIF_AP_OPEN_ITEM
(FILE2S4)

Fixed Asset incl. Master data + Migration of Fixed assets


FI-AA SIF_FIXED_ASSET
Balances Transactional data (FILE2S4)

G/L Account Migration of G/L balances


FI Transactional data SIF_GL_OPEN_ITEM
Balances (FILE2S4)
Business Object
Area Business Object Type Migration Cockpit Object Name Technical Object Name
Name

G/L Account Open Migration of G/L open items


FI Transactional data SIF_GL_OPEN_ITEM
Items (FILE2S4)

Migration of Exchange rates


Exchange Rate FI Master data SIF_EXCH_RATE
(FILE2S4)

Migration of Material inventory


Inventory Balances MM-IM Transactional data SIF_INVENTORYBAL
balances (FILE2S4)

Migration of Materials
Material Master LO-MD Master data SIF_MATERIAL
(FILE2S4)

Migration of Material long texts


Material Long texts LO-MD Master data SIF_MAT_LONGTEXT
(FILE2S4)

Material Migration of Consumptions


LO-MD Master data SIF_MAT_CONSUMP
Consumptions (FILE2S4)

Purchasing Info Migration of Purchasing info


MM-PUR Master data SIF_PURCH_INFREC
Record records (FILE2S4)

Migration of Purchase orders


Purchase Order MM-PUR Transactional data SIF_PURCH_ORDER
(only open) (FILE2S4)

SD, CO, Migration of Pricing conditions


Pricing Conditions Master data (FILE2S4) SIF_CONDITIONS
MM-PUR
(Currently Cloud Only)

Contracts Migration of Purchasing


MM-PUR Transactional data SIF_CONTRACTS
(Purchasing) contracts (FILE2S4)
Business Object
Area Business Object Type Migration Cockpit Object Name Technical Object Name
Name

Migration of Source lists


Source List MM-PUR Transactional data SIF_SOURCE_LIST
(FILE2S4)

Migration of sales orders (only


Sales Order SD Transactional data SIF_SALES_ORDER
open) (FILE2S4)

QM, SD,
Batches Master data Migration of Batches (FILE2S4) SIF_BATCHES
PP-PI

Bill of Material Migration of Bill of materials


PP Master data SIF_BOM
(BOM) (FILE2S4)

Migration of Work centers


Work Center PP, QM Master data SIF_WORK_CNTR
(FILE2S4)

Migration of Equipment
Equipment PM Master data SIF_EQUIPMENT
(FILE2S4)

Equipment Task Migration of Equipment task


PM Master data SIF_EAM_TASKLIST
List lists (FILE2S4)

Migration of Functional
Functional Location PM Master data SIF_FUNC_LOC
locations (FILE2S4)

Migration of Characteristics
Characteristics CA Master data SIF_CHARACT
(FILE2S4)

Classes CA Master data Migration of Classes (FILE2S4) SIF_CLASS

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
<?xml version=1.0?>

<?mso-application progid=Excel.Sheet?>
<Workbook xmlns=urn:schemas-microsoft-com:office:spreadsheet

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=http://www.w3.org/TR/REC-html40>
<DocumentProperties xmlns=urn:schemas-microsoft-com:office:office>
<Title>MATERIAL</Title>

<Author>HHE</Author>
<LastAuthor>Heiko Herrmann</LastAuthor>

<Created>2017-01-03T00:00:00Z</Created>
<LastSaved>2017-02-08T14:11:35Z</LastSaved>

<Company>HHE</Company>

<Version>16.00</Version>
</DocumentProperties>

<CustomDocumentProperties xmlns=urn:schemas-microsoft-com:office:office>

<APPLICATION dt:dt=string>SLO</APPLICATION>
<OBJECT_NAME dt:dt=string>MATERIAL</OBJECT_NAME>

<VERSION dt:dt=string>S4CORE 101 06.01.2017</VERSION>


<SYSTEM dt:dt=string>EAD / 700</SYSTEM>

<LANGUAGE dt:dt=string>D</LANGUAGE>

</CustomDocumentProperties>
<OfficeDocumentSettings xmlns=urn:schemas-microsoft-com:office:office>

<AllowPNG/>
<Colors>

<Row ss:AutoFitHeight=0>

<Cell ss:StyleID=s79><Data ss:Type=String>D1-100011-02</Data></Cell>


<Cell ss:StyleID=s79><Data ss:Type=String>EN</Data></Cell>

<Cell ss:StyleID=s79><Data ss:Type=String>ASF1400</Data></Cell>


<Cell ss:StyleID=s79><Data ss:Type=String>E</Data></Cell>

<Cell ss:StyleID=s79><Data ss:Type=String>9999</Data></Cell>

<Cell ss:Index=7 ss:StyleID=s79><Data ss:Type=String>X</Data></Cell>


<Cell ss:Index=9 ss:StyleID=s79><Data ss:Type=String>98</Data></Cell>
<Cell ss:Index=11><Data ss:Type=String>01</Data></Cell>
<Cell ss:StyleID=s79><Data ss:Type=String>PCE</Data></Cell>
<Cell ss:Index=14 ss:StyleID=s79><Data ss:Type=String>10</Data></Cell>

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 <null> 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 isnt 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
<TNX_COUNT> = <TNX_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 http://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 Persons 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

Vous aimerez peut-être aussi