Professional Documents
Culture Documents
SAP S - 4HANA Migration Cockpit - Deep Dive LTMOM For File - Staging
SAP S - 4HANA Migration Cockpit - Deep Dive LTMOM For File - Staging
The information in this presentation is confidential and proprietary to SAP and may not be disclosed without the permission of SAP.
Except for your obligation to protect confidential information, this presentation is not subject to your license agreement or any other service
or subscription agreement with SAP. SAP has no obligation to pursue any course of business outlined in this presentation or any related
document, or to develop or release any functionality mentioned therein.
This presentation, or any related document and SAP's strategy and possible future developments, products and or platforms directions and
functionality are all subject to change and may be changed by SAP at any time for any reason without notice. The information in this
presentation is not a commitment, promise or legal obligation to deliver any material, code or functionality. This presentation is provided
without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a
particular purpose, or non-infringement. This presentation is for informational purposes and may not be incorporated into a contract. SAP
assumes no responsibility for errors or omissions in this presentation, except if such damages were caused by SAP’s intentional or gross
negligence.
All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ materially from
expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, which speak only as of their dates,
and they should not be relied upon in making purchasing decisions.
Getting started
Further Information
Key facilitators
▪ Out-of-the-box
▪ Available for SAP S/4HANA and SAP S/4HANA Cloud, included in licenses
▪ Preconfigured migration objects
▪ No developer skills required
▪ Step-by-step guidance through the migration process
▪ Preconfigured migration objects and rules
▪ Automatized cross-object value mapping
Transfer data directly from SAP System Migrate data directly from SAP
▪ Transfer data from SAP ERP source system to target SAP system
S/4HANA system
▪ Access source system via RFC connection in Fiori UI
▪ Supports data migration scenarios from other applications
API based
MS_Logistics
Typical Questions:
▪ How can I adapt the delivered content to my customers' needs?
▪ Is it possible to adjust the existing SAP migration objects?
▪ I am missing a field in my Excel template or staging table – how can I add
this field?
▪ How can I adjust the selection of data for the direct transfer approach?
▪ How can I create my own migration objects to transfer customer-specific
data?
Transaction:
LTMOM
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 11
SAP S/4HANA migration cockpit
Migration object modeler for direct transfer
NOTE:
To run the necessary transaction your user needs the following role:
SAP_CA_DMC_MC_DEVELOPER
When you open a project, you can view all objects that are
assigned to your project in one central location, for example you
can view all the migration objects and rules for a project.
On the Migration Object Details Screen you get the information, for which
approach the migration object was created. Projects, which were created
with transaction LTMC are classified as “old” as of 2020.
▪ Migrate Data Using Files (old)
▪ Migrate Data Using Staging Tables (old)
▪ Migrate Data Using Staging Tables
Functionalities
Client Dependency
For each migration object, you can specify Global Data that contains code that defines ABAP variables and ABAP types for
later use. You can also specify code-related elements, such as macros if required.
For migration object delivered by SAP, you get information on name, first release, used API and Wrapper and the migration
object change history.
Under Source Structures, you can display and adjust the source structure so that your data can be transferred to the SAP
S/4HANA system.
Example: You can add a new field and specify the relevant information for the field.
Choose ‘Insert Field’
The XML template file can be downloaded via LTMOM (in source structure definition)
SAP provides predefined views for migration objects. You can use these views to adjust the fields that are available in the
template file and in the staging tables.
Example for template file: If you change a field from Visible to Not Visible and save, the field will not be displayed in the relevant template file.
Under Target Structures, you can get an overview of the target structures associated with the migration object
Structures can be single fields, multiple fields, or tables
Example: Before you add a new field to the source structure, you can determine which target structure the source field should be mapped to.
Under Target Structures, you can double-click the root structure to view detailed information about the function module
that transfers the business object instance to SAP S/4HANA.
As of SAP S/4HANA 2020 CDS behavior definitions are supported in addition
Under Structure Mapping, you can check how the source structure is mapped to the corresponding target structure
As a prerequisite, the source structure must be mapped to a target structure before you can map the fields of the source
to the target structure (see Field Mapping)
Under Field Mapping, you can map fields from the source structure to fields in the target structure
Simply drag the relevant field from the left-hand side to the target structure field on the right-hand side
If a field from a source structure has been mapped to a target field, the system displays a green icon, and a red icon if it has
not been mapped
Filter for mapped/ unmapped fields
Information
▪ Generate Runtime Object: In this activity, the application generates the programs required to read data from the source
system and to transfer data to SAP S/4HANA.
▪ If required, you can view the function modules (internal SAP programs) that facilitate the transfer of data to the SAP
S/4HANA system. To view the function modules, choose Display Generated Function Group.
▪ To view additional information and documentation on the migration object modeler you can choose the Information icon.
Information button
You can use rules to change the values that are migrated from source fields to target fields.
Field-based rules: can be used to change the value of a target field during
the migration.
Event-based rules: custom coding can be inserted at predefined points of
processing an event (for example, at Start of Loop or Start of Record).
Internal rules: can be called by field-based rules or event-based rules.
This allows you to separate code into different modules, which can then
also be shared by other field-based rules or event-based rules.
A translation object defines how values from a specific field in the source system must be translated to target values
during the data migration. You need to assign a translation object to a field-based rule; it cannot be assigned directly to a
target field.
Example
The following values from the Country field in the source system must be
translated to different target values:
Germany → DE
United Kingdom → GB
America → US
In this case, you create a translation object called Country and assign it to a
field-based rule, and assign the rule to the corresponding target field.
You can create variables for migration objects. The advantage of creating variables is that only one operation is needed (for
example by a rule at a BEGIN_OF_LOOP event) to calculate the variable. Rules that are later used at record level can then
access this variable, and use the variable in their code accordingly. Without variables, the rules would need to calculate the
variable for each record again and again.
Where-Used List
You can use a where-used list to view information about the rules where
the variable is used.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 32
Link to Click-Through-Tutorial
Migration object modeler –
getting started
As long as you use the delivered migration objects with their delivered settings, SAP ensures the correctness of
the migration object.
As soon as you start to adapt the delivered migration object, please take care, that SAP only
supports content issues based on the original template. For further information on support for
extended pre-delivered migration objects, please check the following SAP Note 2481235.
In the “Create Migration Object from Template” Wizard you get a list of migration
object templates, which you can choose. Migration objects, which are already part
of the migration project are not listed anymore.
Content update
If a migration object must be updated, the system will prompt you to do so. To update a migration object with content
from SAP, choose Update Object.
Note that if a migration object must be updated by SAP, and it contains any custom modifications, you should
save any modifications that you want to keep for future use before proceeding.
If you choose this option, the system will permanently ignore content updates for the migration object. To enable
content updates again for the migration object, you must delete the existing object and copy it again from a template.
For projects created with the new Fiori App (as of 2020): You can copy a migration object
from another client or from a project, which was created with transaction LTMC.
In the Copy Migration Object Screen you can choose from which project
and migration object a copy should be done. The client and Mass transfer
ID will be filled automatically based on the target project.
If you want to completely disconnect from content upgrades for a specific migration object, you should also
copy the linked includes in the target structure section to your customer namespace and assign them.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 41
Copying and extending delivered content
Copy a migration object and deleting a migration object
If the staging tables are filled with data, (e.g. one or more files have been uploaded for a migration
object), then the migration object cannot be deleted.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 42
Copying and extending delivered content
Add new source structure to a lower level
For a migration object, source structures are organized in a hierarchy. You can add additional structures to
the hierarchy, and remove structures from the hierarchy.
For a newly added structure, you must establish a
foreign key relationship to a structure at a higher level.
To do this, choose the Foreign Key Relationships
button.
The foreign key relationship models how the structures in a migration object relate to each other.
▪ For each primary key field in the foreign key (child) table, at least one relationship to the check (parent) table
must exist (either to a key field or to a non-key field).
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 43
Copying and extending delivered content
Exclusion of fields/structures in the target structure
You can exclude target structures, which are optional in the corresponding function module and which are not
mapped to any source structure. These target structures no longer appear in the UI of LTMOM.
▪ Improves performance during design time when dealing with a complex object and makes modeling easier.
Structure mapping
You can check the documentation for more information on the access type, mapping
type and data path type.
Field mapping
Functionalities
A mapping check can be performed, which lists incomplete mappings (i.e. missing parameters) as
errors as well as source fields, which haven't been assigned to any target field yet as warnings.
As long as you use the delivered migration objects with their delivered settings, SAP ensures the correctness of
the migration object.
As soon as you start to adapt the delivered migration object or create an own migration object,
please take care, that SAP only supports content issues based on the original template. For
further information on support for extended pre-delivered migration objects, please check the
following SAP Note 2481235.
Example
If you use the migration object cost center, you can only create the description of the cost center in one language. If you
need to add descriptions for additional languages, you need to create your own migration object to handle this. In our
example we will create a migration object to add description in additional languages to a created cost center.
If you use Standard APIs, delivered by SAP, please check, that they are released for customer.
As of SAP S/4HANA 2020 besides function module, (CDS) behavior definition can be used to transfer data to SAP
S/4HANA. Examples for migration objects, which use (CDS) behavior definitions, are ECM – Change Master and
QM – Quality Info Record in SAP S/4HANA Cloud.
1. Enter a name, define the target structure using, select the relevant settings and confirm your entries.
Enter BAPI_COSTCENTER_CHANGEMULTIPLE
3. Create the relevant source structure. For a migration object, source structures are organized in a hierarchy. You can add
additional structures to the hierarchy, and remove structures from the hierarchy.
Maximal key length: The sum of all field length for the keys on the top level source structure
including separators must not exceed 200 characters.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 56
Creating an own migration object
Creating a user-defined migration object – structure mapping
If a field from a source structure has been mapped to a target field, the system displays a green
icon beside the name of the field.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 59
Creating an own migration object
Creating a user-defined migration object – field mapping: filter
Good to know
Expert function available to have an automated rule proposal for the target fields in the field mapping
screen. This feature is intended to help you with the creation of your own migration objects.
If you change the rules in delivered migration objects based on the rule proposals, there will be
no content support.
▪ On the Rule Proposals Overview, you can view whether rule proposals exist for the fields in the target
structure.
▪ Matching rule proposals are based on domain and data element assignments in the respective rule.
▪ In addition, if a field in a target structure has the same name as the field in the source structure, the system
proposes a MOVE rule.
Documentation on Rule Proposals available
The system displays the information where the field-based rule was created in brackets:
▪ (S): Subproject-Specific; the rule was created at subproject level and can be used by all migration objects
in that subproject.
▪ (M): Migration-Object-Specific; the rule was created at migration object level and can only be used by that
migration object.
Good to know
Good to know
If you want to create an own migration API please read as a starting point the documentation linked in SAP Note 2590165 .
Direct link to documentation: https://www.sap.com/documents/2020/05/44a27c28-977d-0010-87a3-c30de2ffd8ff.html
Important prerequisites
▪ The function module must not execute the COMMIT WORK command. The SAP S/4HANA migration cockpit handles the
COMMIT control.
▪ The function module must use the ABAP Dictionary structure BAPIRET2 as a structure to return messages to the SAP
S/4HANA migration object modeler.
▪ The function module should not throw exceptions, this could lead to log of data sets.
▪ The function module should provide a test run flag so that it can be run in test mode to simulate the creation of data in the
target system.
▪ If internal numbering is used, the new keys should be returned.
As long as you use the delivered migration objects with their delivered settings, SAP ensures the correctness of
the migration object.
As soon as you start to adapt the delivered migration object or create own rules and translation
objects, please take care, that SAP only supports content issues based on the original
template. For further information on support for extended pre-delivered migration objects,
please check the following SAP Note 2481235.
You can use rules to change the values that are migrated from source fields to target fields.
A translation object defines how values from a specific field in the source system must be translated to target values
during the data migration. You need to assign a translation object to a field-based rule; it cannot be assigned directly to a
target field.
Example
The following values from the Country field in the source system
must be translated to different target values:
Germany → DE
United Kingdom → GB
America → US
In this case, you create a translation object called Country and
assign it to a field-based rule, and assign the rule to the
corresponding target field.
Example
We will create a field-based rule (ZCVT_KOKRS), which will call the translation object for controlling area
(MAP_KOKRS_OWN). In addition we will add an own message and an own pattern within this rule.
Translation objects cannot be assigned directly to a target field. You need to assign a
translation object to a field-based rule or call the translation object in your field-based rule
and then assign the rule to the corresponding target fields.
If you have specific requirements that are not covered by the delivered content, you can create your own rule.
Rules can be created on subproject level or on migration object level. If you create them on
migration object level, the rule is only available for this single migration object.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 73
Rules & translation objects
Creating a user-defined rule – name, description and parameters
1. Enter a technical name for your rule, a rule description and maintain the import and export parameter.
Enter a technical name for your rule in the customer namespace, e.g. ZCVT_KOKRS.
2. Decide, which rule type you want to create. A rule can be based on a translation object, a fixed value or it can be a free
code rule.
3. If you choose Translation Object, you need to enter the related translation object. In our example we assigned
MAP_KOKRS. Do not forget to save your changes.
4. If you want to add additional own coding for the translation object, you need to choose free code and enter your own code
including the call of the translation object.
Suffix _S, means, that the translation " Use Template TRANSLATE (pseudo code)
object had been created on subproject
level. Otherwise, if the translation
object was created on migration object " call translation object MAP_KOKRS_S
level you must add _M.
mwb:translate(['MAP_KOKRS_OWN_S']
[i_param]).
endif.
Save your changes and generate the migration object to check for any syntax errors.
If you have specific requirements that are not covered by the delivered content, you can create your own translation
objects to specify how values from a specific field in the source system must be translated / mapped to the target values
during the data migration.
Translation rules can be created on subproject level or on migration object level. If you create them
on migration object level, the value mapping is only available for this single migration object.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 81
Rules & translation objects
Creating a user-defined translation object – name, description and parameters
1. Enter a technical name for your translation object, a description and maintain the import and export parameter.
Enter a technical name for your rule in the customer namespace, e.g. ZMAP_TEST.
2. Add a value range for the export parameter, if applicable. You can also choose Case-Sensitive for the parameters, if
necessary.
If this indicator is set, the system You can choose the following options
differentiates between capital and to determine the value range:
lower-case letters for the input. If this ▪ Use Domain
indicator is not set, then the input will ▪ Use Value Table
be converted to upper case. ▪ Use Search Help
▪ Do Not Use Value Range
3. Choose additional settings for the source fields. Do not forget to save your changes.
If the source field contains its initial value then the initial
value is ignored by the translation object.
Check the system documentation for further information on the different settings.
4. Create an own field-based rule and assign your own created translation object to this rule.
Save your changes and generate the migration object to check for any syntax errors.
5. Assign your own created rule with your own created translation object to the relevant target field.
Save your changes and generate the migration object to check for any syntax errors.
Before SAP S/4HANA 2020: You export / import projects using transaction LTMC.
As of SAP S/4HANA 2020 but only for projects created with the Fiori App: You export / import projects using
transaction LTMOM (migration object modeler).
SAP S/4HANA 2020 – migration object modeler
You first export a project from a system and save the
project as a zip file. You then import the zip file into the
other system. Mapping values, job settings, event
logs, staging tables and records in staging tables will
not be exported.
If the project you are importing does not exist in the system, a new
project will be created with the relevant project settings.
If the project you are importing already exists in the system, the existing
project settings will be overwritten with the exception of the following:
▪ Database connection
▪ Job settings
▪ Retention period settings
For projects created with new Fiori App the following applies:
It is possible to use a project in a different client. The project is not copied, but only available in the new client.
If the staging tables are located in a remote system (Remote SAP S/4HANA Database):
▪ Clear field /1LT/PROCESSED or delete data from staging table
If the staging tables are located in the local ABAP schema (Local SAP S/4HANA Database):
▪ Staging tables are client-specific => you need to populate the staging tables with data again
Note that all mapping tasks are deleted. This means that you need to download the mapping tasks
before you proceed. You can then upload the mapping tasks in the new client.
For projects created with new Fiori App the following applies:
It is possible to reset the transfer status for a migration object: The report DMC_MC_FM_RESTART_HANDLE resets the
transfer status of all selected records in the staging tables or uploaded MS Excel XML files.
For projects created with new Fiori App the following applies:
1. Mapping Download/Upload: The mapping values can only be seen in the Fiori App and not in the translation objects
in LTMOM anymore. You can download/upload the value mappings in the Fiori App.
3. A project log entry is created if any of the following lifecycle events occur in LTMOM
▪ Create Migration Object from Template
▪ Create User defined Migration Object
▪ Copy Migration Object
▪ Reset Migration Object
▪ Update Migration Object
▪ Delete Migration Object
▪ Can still be changed and worked with in the migration object modeler in SAP S/4HANA 2020, but can only be used in
transaction LTMC
Corrections
The checkbox Convert Parameter Value to Upper Case was removed from the Translation Object Value Range dialog.
This functionality was merged with the checkbox Case Sensitive, which is available as an attribute for every parameter of
a translation object.
With this it's now possible to control whether an inbound or outbound parameter is persisted in
upper case format or not.
You can download a metadata CSV file per migration object in LTMOM or in the Fiori App.
Where used lists are available for rules, translation objects, fixed values and variables.
For a field-based rule you can choose the button Where-
Used List to view information about the rules or target
fields where the field-based rule is used.
When you try to generate a migration object that uses unreleased rules the system displays an
error message. You can use the where-used list to determine where the rule is used.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 96
Migration object modeler
Tip: Project view and migration object view
You can easily switch between project view and migration object view.
You can change the position of structures on the structure mapping and field mapping screen
You can add projects and migration objects to favorite lists, which are available when you start transaction
LTMOM.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 101
Simulating and debugging a migration object
Prerequisites for debugging
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 102
Simulating and debugging a migration object
Simulate Import of a migration object
You can choose one of the following options to decide, which entries
should be taken for the simulation:
▪ Select All Records
▪ Select Max. Number of Records (random)
▪ Select Specific Records (There is currently a technical restriction, that
the specific selection is case sensitive and you’ll not be able to select
anything in lower case)
If required, you can view these records before they are simulated. You can
view these records before they are converted, or after they are converted.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 103
Simulating and debugging a migration object
Debug errors and delete debugging run
If required, you can debug errors in the SAP S/4HANA target system. You do this by using so-called
simulation runs. If you want to use this option, select the option Save Data if Errors Occur and enter
a name for the simulation run in the Simulation Run field.
The system will save the relevant information about the first
erroneous record that was encountered in the staging table and
creates a simulation run (with the name you specify) that contains
this information.
To debug the saved record in the target system, you can choose
Goto → Debug Error (program DMC_MC_MIGOBJ_EXEC_SINGLE_OLO)
To delete the saved simulation run choose Goto → Delete Run (program
DMC_MC_MIGOBJ_EXEC_OLO_DELETE)
If all records can be processed successfully, no record will be saved and the specified simulation run
will be deleted from the system after the simulation run has finished.
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 104
Simulating and debugging a migration object
For projects created with transaction LTMC
You can simulate the import of a file migration object for projects created with transaction LTMC
since 1809. Prerequisite is, that you have downloaded a template file and filled it with data. The process
is the same as shown in the slides before. Some functions may not be available depending on the
release (e.g. view records that will be simulated).
You can simulate the import of a staging migration object for projects created with transaction
LTMC since 1809 FPS01. The process is the same as shown in the slides before. Some functions may
not be available depending on the release (e.g. view records that will be simulated).
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 105
Simulating and debugging a migration object
Downport for lower releases for projects created with transaction LTMC
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 106
Migration object modeler
Further information
Data Migration Landing Page on SAP S/4HANA SAP Help Portal
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 108
SAP S/4HANA migration cockpit – further training material
*
* openSAP Course based on 1909
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 109
SAP S/4HANA migration cockpit - In-App Help now available
Open the In-App Help from any screen in the migration cockpit
Navigate directly to
the SAP Help Portal
documentation
View additional
information for
certain fields
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 110
SAP S/4HANA migration cockpit community
https://community.sap.com/topics/
s4hana-migration-cockpit
FAQ
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 111
Preconfigured SAP S/4HANA sandbox system
Demo scripts for SAP S/4HANA migration cockpit available
https://blogs.sap.com/2019/04/23/sap-s4hana-fully-activated-
appliance-demo-guides/
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 112
SAP S/4HANA migration cockpit Tip:
Run Report DMC_NOTE_ANALYZER
SAP Notes and KBAs
Check SAP Note 2596411
Composite SAP Note for Collective SAP Note for Collective SAP Notes for
migration cockpit Direct Transfer File/Staging
CA-LT-MC CA-LT-MC CA-GTF-MIG
2538700
2780378 Collective SAP Note and FAQ for SAP
2747566
Composite SAP Note for S/4HANA migration cockpit
SAP S/4HANA migration cockpit
SAP S/4HANA migration cockpit File/Staging (Cloud)
Composite Note for
(all releases) Transfer Data Directly from SAP System
2537549
Collective SAP Note and FAQ for SAP
S/4HANA migration cockpit
File/Staging (on premise)
© 2020 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 113
Thank you.
SAP S/4HANA migration cockpit
sap_s4hana_migration_cockpit@sap.com
Find a comprehensive FAQ list in the SAP S/4HANA migration cockpit Community:
https://www.sap.com/documents/2020/03/2c4c6691-8a7d-0010-87a3-c30de2ffd8ff.html