You are on page 1of 115

Week 3: Migration Object Modeler for Direct Transfer

Unit 1: Getting Started with the Migration Object


Modeler – Direct Transfer
Getting started with the migration object modeler – Direct transfer
Weekly learning objectives

Week 1: Staging Tables Approach and Migration Object Modeler


Week 2: Direct Transfer Approach
Week 3: Migration Object Modeler for Direct Transfer

By the end of this week, learners will be able to


▪ Identify the components of a direct transfer migration object
▪ Create a custom-own migration object
▪ Migrate custom-own fields and tables
▪ Implement complex selection logic

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Getting started with the migration object modeler – Direct transfer
Agenda

Migration objects – The basics

Transformation rules / mapping

Download / upload of mapping values

Migrate custom-own fields and tables

Copy and delete migration objects

Overview of main functions in LTMOM

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3


Getting started with the migration object modeler – Direct transfer
Migration objects – The basics

Each SAP application uses its organizational units to structure data. Organizational units are assigned to
each other to be able to process the data in an integrated way.

For each MC scenario, SAP predefines the most suitable unit to be used
as the selection unit, e.g. for SAP ERP to SAP S/4HANA the company code.
Company code
Open items
When starting the selection, an
… integrated selection engine
Materials derives the related organizational
units.
Plant As long as you use SAP delivered
Customers
migration objects, the engine
ensures that all data which belongs
Sales organization
to the selected migration objects of
Cost centers this company code(s) is selected.
Controlling area

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4


Getting started with the migration object modeler – Direct transfer
Migration objects – The basics

Migration object

Source tables Define selection Migration object Transformation rule / Function module
Define derivation of instance mapping
organizational unit

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Getting started with the migration object modeler – Direct transfer
Migration objects – The basics

Migration object

Source tables Define selection Migration object Transformation rule / Function module
Define derivation of instance mapping
organizational unit

3. Defines from 4. Filters derive 2. Contains the data 5. When starting the 1. Expects 6. Data is created
which tables in the relevant which is necessary to simulation or migration, dedicated fields in respectively
the source organizational feed the function the transformation rules order to be able to posted in
system the units from which module. are applied to the fields create a record in SAP S/4HANA
data is read in the data is of the instance. The the target system
order to create selected. More transformed instance is
a migration selection options passed to the API.
object instance exist.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Getting started with the migration object modeler – Direct transfer
Migration objects – The basics

As long as you use the delivered migration objects, SAP ensures that all relevant records (chosen
organizational units and chosen migration objects) are selected. The derivation of the dependent
organizational units is also already part of the delivered objects.

As soon as you start adapting the selection, adapting delivered objects, or


creating own objects, you are responsible for ensuring a consistent selection and
a successful migration.

Refer to SAP Note 2481235 for more details.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Getting started with the migration object modeler – Direct transfer
Transformation rules / mapping

The migration cockpit uses transformation rules to change values that are migrated from source fields to
target fields. You can use existing rules or create your own rules and assign them to the target fields in the
Field Mapping.

Source tables Define selection Migration object Transformation Function module


Define derivation of instance rule / mapping
organizational unit

In the migration cockpit, transformation rules are called mapping tasks.


The delivered migration objects already contain predefined mapping tasks.
The following rule types exist:
▪ Fixed values
▪ Value mappings
▪ Source code (since 2020)
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8
Getting started with the migration object modeler – Direct transfer
Transformation rules / mapping

▪ Until release 2020 (incl.), the Selection step also created mapping value proposals. So after you executed the
selection from the source system, the mapping values were visible. With release 2021, mapping values are
created in the separate activity Prepare Mapping Tasks.
▪ In the migration cockpit, only the mapping tasks which have values (step: Prepare Mapping Tasks) are
displayed. If you go to Download Mapping Templates, all mappings which are basically available for this object
are offered. In transaction LTMOM, you also see all mapping tasks.
▪ Currently, there is no lock functionality for mapping values. Manual value editing is always possible. Only the
upload of mapping is blocked if at least one record for the migration object has already been successfully
migrated (or successfully partly migrated in case of multi-step objects).
▪ Source code rules and MOVE rules are not displayed in the migration cockpit (under mapping tasks), only in
transaction LTMOM.
▪ The SKIP rule (influence selection) is a source code rule.
▪ Transformation rules can be transported. Values are never transported, they can be downloaded and uploaded.
▪ With 2021, copy and deletion of transformation rules is possible and can be transported.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Getting started with the migration object modeler – Direct transfer
Download / upload of mapping values

Mapping values can be downloaded/uploaded in the migration cockpit (since 2020). Mapping download/upload
in transaction LTMOM (since 1909) is no longer possible with release 2020 FPS1.

Upload/download all
templates and / or mappings
for your project! Upload / download Upload / download
mapping templates mapping values

Migration Cockpit

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 10


Getting started with the migration object modeler – Direct transfer
Migrate custom-own fields

If there are field extensions in the source system (custom-own fields resp. Z-fields) the migration cockpit
recognizes this.
Transaction LTMOM displays these fields within the migration object under “source tables” as source fields.
In order to migrate such an extension, the extension must exist in the target system too.
If and how the custom-own field can be migrated to the target system depends on how the BAPI used in the
migration object is designed.
For function modules, three different concepts exist:
▪ Function modules which contain includes or append fields
▪ BAPI function modules with type 1 extension fields (e.g. BAPI_MATERIAL_SAVEREPLICA)
▪ BAPI function modules with type 2 extension fields: with or without X-fields
In all cases, the includes and append structures have to be edited by the customer (transaction SE11).
The user needs deep DDIC knowledge and ABAP development authorization.
If you want to create an own function module, see SAP Note 2590165.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 11


Getting started with the migration object modeler – Direct transfer
Migrate custom-own tables

The SAP S/4HANA migration cockpit is able to migrate custom developments such as
▪ additional Z-fields in standard objects or
▪ completely individual custom objects

Design of the migration cockpit


▪ Instance-based processing  each (!) line of the root table in the source structure definition is treated as an
instance
▪ Each sender record becomes an instance and is treated as a single instance while transferring the data
▪ This makes sense for processing of an instance as a whole entity (usually an instance consists of
several source tables, whose entries have a relation to each other via foreign key relations)
▪ The target API performs plausibility checks for each instance before creating the instance on database
level. The “all or nothing” principle is applied per instance to create only logically consistent instances.

If a simple 1:1 table transfer without the need for transformations, plausibility and
consistency checks is required, you should consider developing an own RFC-enabled
function module (currently used API just RFC-enabled) and a Z program which retrieves
the data from the Z table and transfers it 1:1 from sender to target.
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 12
Getting started with the migration object modeler – Direct transfer
Copy and delete migration objects

With release 2020, you can copy migration objects from a template (from the objects delivered by SAP) and
copy migration objects within the same project. Deleting objects is also possible.

1 Copy migration object from template


1
2
2 Copy migration object within the same project

3 Delete migration object (right mouse-click)

With 2020 FPS01: copy project


(in the migration cockpit/SAP Fiori) 3

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 13


Getting started with the migration object modeler – Direct transfer
Overview of main functions in LTMOM

The “Migrate data directly from SAP system” approach is available since release 1909.
Find below important new features.

Feature / LTMOM 2020 2021 2022


Copy objects x x x

Delete objects x x x

Selection – skip rule x x x

Mapping – custom-own source code rules x x x

Mapping download/upload disabled in LTMOM – now in SAP Fiori only x (FPS01) x x

Create migration object from template – copy an (updated) standard


SAP migration object into your project (a second time if needed) x x x

Selection – BAdI for selection - x x

Selection – Filter values can be displayed - - x

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 14


Getting started with the migration object modeler – Direct transfer
Key takeaways

In this unit you have learned


▪ About the components of direct transfer migration objects
▪ About details of transformation rules / mapping
▪ How to migrate custom-own fields and tables
▪ How to copy and delete migration objects

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 15


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2023 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. 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, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 3: Migration Object Modeler for Direct Transfer
Unit 2: Creating Your Own Migration Object (I)
Creating your own migration object (I)
Agenda

Business scenario

Status of demo project

Demo – Part I

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Creating your own migration object (I)
Business scenario

Imagine migration object “CO – Cost center” only migrates master data in the logon language (this was the
case until release 2021). In order to migrate texts in other languages too, an additional migration object is
needed.
We use this example to demonstrate how to create an own migration object.

SAP ERP
source system

Table CSKT contains cost center


texts in different languages
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3
Creating your own migration object (I)
Status of demo project

For our example, one cost center


“KSDTLANGU” has been partially
migrated, meaning only the master
data record has been migrated
(CSKS) with the cost center texts in
the logon language (CSKT, English)

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4


Creating your own migration object (I)
Demo (based on 2022 FPS1)

Steps shown in the demo:


▪ LTMOM: create a migration object – this opens the wizard
▪ Migration object wizard
− Edit source tables
− Define data selection (later)
− Define unique object ID
− Define target API and API call results
▪ Check project in the migration cockpit (SAP Fiori)
▪ LTMOM
− Source tables – define filters and limit selection
− Define structure mapping and foreign table data access
− Define field mapping and assign mapping rules
▪ Execute the selection (SAP Fiori)
▪ Execute the simulation and migration in the migration cockpit (SAP Fiori)

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Creating your own migration object (I)
Steps executed in the systems

Steps shown in the demo:


▪ LTMOM: create a migration object – this opens the wizard
▪ Migration object wizard
− Edit source tables
− Define data selection (later)
− Define unique object ID
− Define target API and API call results
▪ Check project in the migration cockpit (SAP Fiori)
▪ LTMOM
− Source tables – define filters and limit selection
− Define structure mapping and foreign table data access
− Define field mapping and assign mapping rules
▪ Execute the selection (SAP Fiori)
▪ Execute the simulation and migration in the migration cockpit (SAP Fiori)

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Creating your own migration object (I)
Key takeaways

In this unit you have learned


▪ How the migration object wizard supports you in
creating a migration object. Details are added directly
in transaction LTMOM.
▪ That custom-own tables can be part of your migration
object data model
▪ That you can assign a standard SAP API or custom-
own API to the migration object
▪ That if the chosen API offers a simulation function it
can also be used within the migration cockpit
▪ That the new migration object is displayed in the
migration cockpit (SAP Fiori). It is processed in the
same way as the migration objects delivered by SAP.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Creating your own migration object (I)
Start with transaction LTMOM

Start with transaction LTMOM, choose your project

You see the two standard migration objects that are


already assigned to the project

Click the info button to view


the comprehensive
documentation for the
migration object modeler,
direct transfer approach

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


Creating your own migration object (I)
Create a migration object – Opens the wizard

If you have specific requirements that are not covered by the migration objects provided by SAP, you can
create user-defined migration objects.
Choose: Project → Create Migration Object → User-Defined. This
path opens a wizard which supports you in creating your own object.

The migration object


wizard guides you step
by step through the
process of creating
your own object
Pay attention to the
documentation!

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Creating your own migration object (I)
Migration object wizard – Source tables

In the Source Tables step you define the table(s) from which the selection will read the data. You can also use
customer-own tables here.

Add root table: In this example, the root table


is CSKT – the table for cost center texts

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 10


Creating your own migration object (I)
Migration object wizard – Source tables

Table CSKT does not contain all the fields that are needed to feed the respective BAPI (field valid-from is
missing), so we need a second table CSKS to fill all fields. CSKS is defined as a child table in this data model.

Position the cursor on table CSKT and choose Add Child Table

Parent – child
For this example, define CSKS as child
relationship
table of CSKT

Proposal button
Now the foreign key relationship between
parent and child table has to be defined. For
each CSKT key field, assign the respective
CSKS field.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 11


Creating your own migration object (I)
Migration object wizard – Data selection

In this step, you can define simple data selection settings for your migration object. In our example, we use
“Define selection later” as we will have a more detailed selection.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 12


Creating your own migration object (I)
Migration object wizard – Unique object ID

In this step, you define which fields determine a migration object instance in a unique way. In this example, the
fields Language Key, Controlling Area, Cost Center, and Valid To Date define one instance unambiguously.

The proposal button gives the correct suggestion

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 13


Creating your own migration object (I)
Migration object wizard – Target API

Assign the function module which will be used to post or create the data in the SAP S/4HANA target system.
You can also assign an own custom API. In addition, define here the parameters for a possible simulation
mode. Check the function module documentation to get the details about a possible simulation functionality and
how to fill parameters.

Parameters for simulation

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 14


Creating your own migration object (I)
Migration object wizard – API call results

The API call results step offers all exporting parameters and
table parameters of the function module you assigned in the
previous Target API step. The proposal function suggests
the proper evaluation method.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 15


Creating your own migration object (I)
Look into the migration cockpit

Back in the migration cockpit, you see the newly created migration object.
This migration object is processed in the same way as the migration objects delivered by SAP.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 16


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2023 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. 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, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 3: Migration Object Modeler for Direct Transfer
Unit 3: Creating Your Own Migration Object (II)
Creating your own migration object (II)
Agenda

Demo – Part II

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Creating your own migration object (II)
Demo (based on 2022 FPS1)

Steps shown in the demo:


▪ LTMOM: create a migration object – this opens the wizard
▪ Migration object wizard
− Edit source tables
− Define data selection (later)
− Define unique object ID
− Define target API and API call results
▪ Check project in the migration cockpit (SAP Fiori)
▪ LTMOM
− Source tables – define filters and limit selection
− Define structure mapping and foreign table data access
− Define field mapping and assign mapping rules
▪ Execute the selection (SAP Fiori)
▪ Execute the simulation and migration in the migration cockpit (SAP Fiori)

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3


Creating your own migration object (II)
LTMOM – Source tables – Example for filters

A filter is a collection of values of the same type that is stored centrally for your project, and therefore available
for all migration objects assigned to the project. A filter can be, for example, company code, controlling area,
plant, …

For this example, two filters are needed.


For table CSKT, only field KOKRS is
possible, for table CSKS, field BUKRS will
be defined as a filter.

Logic for selection


Start selection, popup: You will select for BUKRS 1000 SAP S/4HANA

Migration object instances are


Looks into table TKA02: BUKRS – KOKRS: 1000 – 1000 created in the SAP S/4HANA system
Selects entries from CSKT for KOKRS 1000 SAP ERP
Selects entries from CSKS for BUKRS 1000

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4


Creating your own migration object (II)
Steps executed in the systems

Steps shown in the demo:


▪ LTMOM: create a migration object – this opens the wizard
▪ Migration object wizard
− Edit source tables
− Define data selection (later)
− Define unique object ID
− Define target API and API call results
▪ Check project in the migration cockpit (SAP Fiori)
▪ LTMOM
− Source tables – define filters and limit selection
− Define structure mapping and foreign table data access
− Define field mapping and assign mapping rules
▪ Execute the selection (SAP Fiori)
▪ Execute the simulation and migration in the migration cockpit (SAP Fiori)

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Creating your own migration object (II)
Key takeaways

In this unit you have learned


▪ How the selection can be limited by filters and on table
field level
▪ How to do structure and field mapping
▪ How to assign different mapping / transformation types
▪ How to create own mapping / transformation rules

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Creating your own migration object (II)
LTMOM – Source tables

After having finished the steps in the migration object wizard, some more details need to be edited directly in
transaction LTMOM. Then the new migration object is ready to be used. Under Source Tables you can
influence the selection and define filters.
Go to Source Tables and double-click table
CSKT to open the window on the right-hand side

In column Selection you


define/influence the
selection on table level.
You can also assign
filters that define which
organizational unit is
used to select data from
the source system. A filter
can be, for example,
company code, controlling
area, plant, …

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Creating your own migration object (II)
LTMOM – Source tables – Define filter for tables CSKT and CSKS

Choose the filter


(defined by SAP)
Click the button
in row KOKRS

The arrow
turns green
Do the same for table CSKS:
go to field BUKRS and assign filter BUKRS.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


Creating your own migration object (II)
LTMOM – Source tables – Only select entries for cost center KSDTLANGU

Entries will be
selected only for
this cost center

Click the button


in row KOSTL

Now we have two green arrows

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Creating your own migration object (II)
Structure mapping

Under Structure Mapping you define which information is transferred from the source structure to the structure
of the function module.

Structure of the function module

Drag and drop the source structure CSKT to the target structure
(to the function module BAPI_COSTCENTER_CHANGEMULTIPLE)
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 10
Creating your own migration object (II)
LTMOM – Structure mapping – Foreign table data access

Foreign table data access defines how the records of child table CSKS will be selected. In the present data
model, for each record in CSKT there is only one dedicated record in CSKS. So the option “Read any line” is
chosen.

Click set up

Choose Read any line


Click COSTCENTERLIST

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 11


Creating your own migration object (II)
Field mapping

In Field Mapping you map the fields of the source tables to the fields of the target structure / the function module.
Only the mapped fields are shown. You can
change it to “All Fields” if you want to get all.

Transformation type
is currently “Move”.
This means all values
are moved unchanged
1:1 from the source
system to the target
SAP S/4HANA system

Drag and drop the source fields on the left-hand side (from CSKT and CSKS) to the target fields of
the function module BAPI_COSTCENTER_CHANGEMULTIPLE (on the right-hand side). Fields
BUKRS and DATAB are moved from table CSKS, all other fields from CSKT. Be careful to expand
the correct table (!) under Source Tables in order to choose the fields from the correct table!
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 12
Creating your own migration object (II)
LTMOM – Field mapping – Assign mappings for KOKRS and BUKRS

For fields KOKRS and BUKRS we need not only 1:1 moves but mappings (from source value to target value). So we choose
another mapping type for them.

Click on the entry in column Assignment

Mark “Fill field using a mapping, …”

Choose rule already defined by SAP


“MAP_KOKRS” and fill it with source
values from CSKT-KOKRS.

Do the same for assignment CSKS-BUKRS. Use rule “MAP_BUKRS” with source value CSKS-BUKRS. The upcoming
popup (more settings to be maintained) can be ignored for our example. It would only be necessary if values are passed
over for the same variable in several steps within one object. But it does not harm anything if maintained.
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 13
Creating your own migration object (II)
LTMOM – Field mapping – Create an own rule

You can also create own rules on project or object level: fixed values, value mappings, or source code rules.
Right-click on the respective line.

On project or object level

Right-click on the
respective line to open
the Create window

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 14


Creating your own migration object (II)
LTMOM – Field mapping result

The field mapping for our example looks like this now. 8 field mappings, 2 of type “mapping”, 6 of type “move”.

The definition of the migration object is now complete. Save it and exit transaction LTMOM.
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 15
Creating your own migration object (II)
Migration cockpit – Selection result

We execute the selection in the app. As result, we get 3 instances – 1 instance (E, F, I) for each text.
The custom-created migration object can be processed as all other objects.

The mappings for BUKRS and KOKRS


are shown here. They have already been
edited when preparing the other two
objects. For transformation type “Move”,
no mapping tasks are displayed.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 16


Creating your own migration object (II)
Migration cockpit – Migration result

We execute the simulation and then the migration. Three instances are migrated successfully.

App: Manage cost centers

All texts for cost center KSDTLANGU are migrated

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 17


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2023 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. 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, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 3: Migration Object Modeler for Direct Transfer
Unit 4: Focus Topic Selection: Modeling Capabilities
Focus topic selection: modeling capabilities
Agenda

Ways to influence the selection

Filters

Table fields

Inherit restrictions

BAdI for selection

Skip rule

Restrictions

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Focus topic selection: modeling capabilities
Adapt the selection

As long as you use the delivered migration objects, SAP ensures that all relevant records (chosen
organizational units and chosen migration objects) are selected. The derivation of the dependent organizational
units is also already part of the delivered objects.

As soon as you start adapting the selection, adapting delivered objects, or


creating own objects, you are responsible for ensuring a consistent selection and
a successful migration.

Refer to SAP Note 2481235 for more details.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3


Focus topic selection: modeling capabilities
Ways to influence the selection

SAP S/4HANA SAP ERP SAP S/4HANA


BAdI for
Project Filter Table field
selection
Skip rule Selection result

Company
codes
Migration
objects

How can you influence the selection?


Set a filter which is Define selection criteria Write coding to Write coding to skip
delivered by SAP on table field level define the selection items from selection

Define inheritance of restriction within the data model of the migration

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4


Focus topic selection: modeling capabilities
Ways to influence the selection – Details

This KBA provides technical deep-dive insight into the selection logic: 3249988

SAP S/4HANA SAP ERP SAP S/4HANA


BAdI for
Project Filter Table field
selection
Skip rule Selection result

Records belonging to respective organizational Records are transferred to the


Company units are selected from the source tables. target system.
codes Restrictions on table field level are applied if Skip rules are applied if
Company code Instances
Migration Controlling area maintained. maintained.
Plant
objects

Internal tables
CSKS

CSKT

How can you influence the selection?


Set a filter which is Define selection criteria Write coding to Write coding to skip
delivered by SAP on table field level define the selection items from selection

Define inheritance of restriction within the data model of the migration

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Focus topic selection: modeling capabilities
Filters

▪ Definition: a filter is a collection of values of the same type that is stored


centrally for your project, and therefore available for all migration objects
assigned to the project. A filter can be, for example, company code,
controlling area, plant, chart of accounts, …
▪ Filters are defined by SAP per scenario (e.g. SAP ERP to SAP S/4HANA,
SAP CRM to SAP S/4HANA Service, …). The list of available filters can
be seen in your object: transaction LTMOM, source tables, column
selection for the respective field – click on the input help of Filtering Logic
field.
▪ The filters take care that the related organizational units or criterion are
derived correctly based on the values which have been defined in the
respective migration cockpit project.
▪ The rules behind the filters are not visible to customers
▪ Derived filter values, e.g. the plants which have been derived by the
company codes, can be displayed since 2022 (transaction LTMOM,
utilities, filters). It is not possible to change, add, or delete the derived
values. Check if table field restrictions can solve your requirement.
▪ New filters cannot be created by customers.
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6
Focus topic selection: modeling capabilities
Table fields

In your migration object, under Source Tables, you can change the selection for this object. The standard
select option dialog is offered for each table field of the source tables.

In this example, only the texts for cost


centers 1 to DE will be selected

A click on the arrow opens the


standard select option dialog

Click the arrow to open the popup


for detailed selection settings for
field CSKT-KOSTL
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7
Focus topic selection: modeling capabilities
Inherit restrictions

If you use filters and/or restrictions on table fields, you also have to define how the selection for each source
table at level >=2 impacts other tables.

Click Selection Settings


on child table level

▪ Child tables only: the selection settings are restricted only to the current table. There
is no impact on the selection result from the header table. But all its child tables are
affected. All child tables will automatically be set to the same option and cannot be
changed.
▪ Parent and child tables (default): the selection result is aggregated level by level
upwards until it reaches the header table.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


Focus topic selection: modeling capabilities
Inherit restrictions – Example

The example below for migration object product explains the logic of this setting. This example does not
represent the complete data model; it is a reduced and schematic representation!
Detailed view on tables
MARA contains no field which is suitable for an
MARA organizational derivation.
MARC
MATNR
MATNR WERKS
In order to migrate only the material numbers which
AAA
belong to the relevant company codes, the filter
AAA 1000
WERKS is set on subordinated table MARC. The filter
BBB AAA 2000
Source tables and filters WERKS finds in MARC all MATNR which are assigned
BBB 2000 to plants belonging to the chosen company codes.
CCC
BBB 3000
The setting Parent and child tables has to be set. This
MARA DDD CCC 4000
means only when a MARC-MATNR record is relevant is
DDD 5000 the MARA-MATNR record selected too.
… If Child tables only is set, all MARA-MATNR records
WERKS_FILTER
would be selected, regardless of whether a suitable
MARC WERKS WERKS BUKRS: 1000
MARC-MATNR is found. This will lead to errors during
1000
… simulation/migration where MARA records have no
2000 corresponding MARC records.
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9
Focus topic selection: modeling capabilities
Ways to influence the selection – BAdI for selection

The BAdI allows you to apply additional logic to the data selection from the SAP source system. If the
filtering logic or simple selection criteria offered in the migration object modeler are not sufficient for you
to support your data selection requirements, you can implement ABAP code in the source system using
this BAdI.
Find details in KBA 3092921.
BAdI for selection

SAP ERP SAP S/4HANA


Filter Table field Skip rule
Selection result

BAdI for selection Skip rule


▪ Control whether data will leave ▪ Skip certain instances from being created
the source system or not. in the target system.
▪ Add, remove, or alter keys of ▪ The skip rule can only skip records, it
selected data records. cannot add or alter keys.
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 10
Focus topic selection: modeling capabilities
Skip rule

In your migration object, under Source Tables, you can use the Selection Settings button to access the so-called skip rule.
You first generate the rule. It is of type “source code” and will be displayed under this section in your object. With the pen
button you access the source code. Here, you write your individual coding to skip items from the selection. As the skip rule
consumes more runtime in comparison to other possibilities, only use this rule if necessary.

First, click Generate.


The button then
changes to the pen
The rule is called from the target system after receiving corresponding data button.
for an instance from the source system and before creating a new instance
and adding it to the instance list. The selected data is passed to the rule by
Here you put
its import parameters, so you can apply your criteria to the data and provide
in your coding
your decision in the export parameter _EV_SKIP_RECORD.
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 11
Focus topic selection: modeling capabilities
Restrictions

▪ These three types of selection criteria (filters, table fields,


inherit restrictions/selection criteria scope) can only be
applied at database table level.
▪ If you add some manual definition tables or extension
tables, you cannot set these selection criteria.
▪ In addition, if your database table is a cluster or pool table,
you cannot set these selection criteria either.
▪ If the header table is a cluster or pool table, the selection
criteria cannot be applied to all the tables.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 12


Focus topic selection: modeling capabilities
Key takeaways

In this unit you have learned


▪ About the different ways you can influence the
selection in transaction LTMOM

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 13


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2023 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. 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, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 3: Migration Object Modeler for Direct Transfer
Unit 5: Focus Topic Selection: Influence Selection
Using Coding
Focus topic selection: influence selection using coding
Agenda

Business scenario

Demo

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Focus topic selection: influence selection using coding
Modeling capabilities – Transaction LTMOM

SAP S/4HANA SAP ERP SAP S/4HANA


BAdI for
Project Filter Table field
selection
Skip rule Selection result

Company
codes
Migration
objects

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3


Focus topic selection: influence selection using coding
Business scenario

Migrate profit center data using the migration object CO – Profit Center.
From the source ERP system, only profit center data shall be selected where the third character of the profit
center is equal to 1.
As soon as you start adapting the selection, you are responsible for ensuring a consistent
selection and a successful migration.
Refer to SAP Note 2481235 for more details.

SAP ERP source system

Migration object CO – Profit Center has table CEPC as its root source table.
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4
Focus topic selection: influence selection using coding
Business scenario

There are a number of ways to do this using transaction LTMOM:


I. Table field

II. Condition to skip instance

III. BAdI for selection

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Focus topic selection: influence selection using coding
Business scenario – Modifying option I: table field

The profit center data in this scenario is simplified: Profit centers start with “YB” and are followed by three
numbers. Therefore, the scenario could be rephrased to selecting all profit centers between YB100 and
YB199.

There are limitations to choosing this option: Profit centers are alphanumeric.

For more information on changing the selection settings, see KBA 3249988 or the info button.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Focus topic selection: influence selection using coding
Business scenario – Modifying options II: condition to skip instance

After data is selected from the source system it is possible to skip migration object instances such that they
are excluded from further processing in the SAP S/4HANA migration cockpit.

As this procedure consumes more resources than other selection options, only use this rule if
necessary.

For more information on how to exclude object instances, see KBA 3249988 or the info button.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 7


Focus topic selection: influence selection using coding
Business scenario – Modifying options III: BAdI for selection

In this unit we will demonstrate how the business scenario can be done using a BAdI
implementation.

For more information on BAdI implementation see KBA 309292.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8


Focus topic selection: influence selection using coding
Business Add-Ins (BAdIs)

BAdI is an explicit enhancement option:


▪ Defined by developer in a central initial system
▪ Managed by enhancement spots
▪ Enhanced by enhancement implementation

BAdI is an object-oriented enhancement option:


▪ Definition of a BAdI is determined by its interface – methods offered by the BAdI
▪ BAdI implementations are classes that implement the BAdI interface

Developing knowledge or help from a developer expert is advised when using this option.

More information on enhancement options and BAdIs can be found here:


Enhancement concept
BAdIs

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Focus topic selection: influence selection using coding
Key takeaways

In this unit you have learned


▪ That there can be multiple options for influencing the selection
▪ How the selection can be influenced using a BAdI

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 10


Focus topic selection: influence selection using coding
Create enhancement implementation

The BAdI implementation influences the selection on the source system.


Therefore, the BAdI has to be created in the source system.

In the source system, go to transaction SE19.

Create a new enhancement implementation for


enhancement spot CNV_OR_OBT.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 11


Focus topic selection: influence selection using coding
Create enhancement implementation

1 Provide a name and description for your enhancement implementation on the creation popup.

2 Click Confirm.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 12


Focus topic selection: influence selection using coding
Create enhancement implementation

1 Choose the BAdI definition CNV_OR_OBT_PRESEL_BADI in the dropdown list.

2 Provide a name for the BAdI implementation and the new implementation class.

3 Click Confirm.

2
1

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 13


Focus topic selection: influence selection using coding
Create enhancement implementation

After confirmation, the BAdI enhancement implementation is created.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 14


Focus topic selection: influence selection using coding
Create filter value

1 Go to tab Enh. Implementation Elements.

2 Double click node


Filter Val.

3 Create a new
filter combination.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 15


Focus topic selection: influence selection using coding
Create filter value

Double-click the new combination.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 16


Focus topic selection: influence selection using coding
Create filter value

On the popup screen, provide a filter value name for filter PRESEL_BADI_FILTER_VALUE
with comparator ‘=’.

Make sure the value is unique.


It will be maintained in the
selection criteria of the migration
project.

Save your changes and activate the enhancement implementation.

The system will display a popup informing you that the interface implementation is still missing.
It can be ignored for the moment.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 17


Focus topic selection: influence selection using coding
Create BAdI implementation

Lastly, you need to implement the required logic for the data selection in the class that you have created.

1 Open tab Enh. Implementation Elements.

2 Double-click the node Implementation Class.

3 Then double-click the class method. There is only one:


IF_CNV_OR_OBT_PRESEL_BADI~PROCESS_DATA.

2
3
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 18
Focus topic selection: influence selection using coding
Create BAdI implementation

The system will display a popup to inform you that the method has not yet been implemented.
Confirm that you want to create the implementation.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 19


Focus topic selection: influence selection using coding
Create BAdI implementation

The implementation of the method PROCESS_DATA has been created.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 20


Focus topic selection: influence selection using coding
Create BAdI implementation

The method PROCESS_DATA has


▪ Several importing parameters that contain different technical information
▪ One changing parameter that contains data of the current table
▪ One exception

The importing and changing parameters are filled by the system during the call of the BAdI implementation.

During the selection of one migration object the BAdI implementation is called
▪ After other selection criteria (filtering logic, additional selection criteria etc.) is applied to the data
▪ For all source tables for which the BAdI for selection has been activated

The same BAdI implementation is used for all migration objects within one migration project.
It is advised to use a different BAdI implementation for different migration projects as it is not possible
to find out which migration project the migration object belongs to.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 21


Focus topic selection: influence selection using coding
Create BAdI implementation

Importing parameter IV_DATAMODEL_COMMENT can be used to find out for which migration object and
source table the BAdI is called.
It contains the information that can be retrieved via LTMOM concatenated in one string:
‘<technical migration object name>-<current source table name>’

When multiple database source tables of the same kind are created, a substitute name must be
provided. This information is stored in importing parameter IV_DATAMODEL_COMMENT.
The information about the actual database table is stored in importing parameter IV_TABLE_NAME.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 22


Focus topic selection: influence selection using coding
Create BAdI implementation

The changing parameter CT_DATA contains the data that has been selected so far.

Other selection criteria (filtering logic, additional selection criteria etc.) have already been applied to it, so
CT_DATA does not contain all database table entries existing in your source system at runtime.

Changes in CT_DATA will be used for the rest of the selection process.

The changing parameter is not of the same type as the source table.
It is of a different type and only table key fields of the source table can be used.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 23


Focus topic selection: influence selection using coding
Create BAdI implementation

The coding could look


something like this.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 24


Focus topic selection: influence selection using coding
Create BAdI implementation

Make sure to activate and save the class as well as the BAdI implementation.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 25


Focus topic selection: influence selection using coding
Find BAdI implementation

There are a number of ways to display your BAdI implementation:

Go to transaction SE18. Go to transaction SE19.


Either display the Enhancement Enter the enhancement implementation name
Spot CNV_OR_OBT you provided when creating the BAdI
or BAdI Name implementation.
CNV_OR_OBT_PRESEL_BADI. Click Display.

On tab Enh. Spot Element


Definitions double-click the node
Implementations.
Doble-click your BAdI
implementation.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 26


Focus topic selection: influence selection using coding
Activate BAdI selection option

Now we need to activate the BAdI selection exit for our migration project.

In transaction LTMOM open your


migration project and enter edit mode.
On the project level, choose the button
BAdI Selection Exit is Active.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 27


Focus topic selection: influence selection using coding
Activate BAdI selection option

Provide the filter value of your BAdI


implementation and save the changes.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 28


Focus topic selection: influence selection using coding
Activate BAdI selection option

The BAdI implementation method will be called during the selection of all source tables for which the BAdI for
selection is activated in the selection settings. However, it is up to the implementation in the method
PROCESS_DATA whether or not the data is changed.

Note that with activation of the BAdI for selection for a migration project, the BAdI for selection will
automatically be activated for all source tables for which the following is true
▪ The source table is the root table of the data model
▪ The source table has at least one selection criterion assigned to it
▪ At least one selection criterion is assigned to one of the source table’s child tables
(if the selection criteria scope covers parent tables)

For all other source tables for which the BAdI exit is not activated by default you must activate it manually.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 29


Focus topic selection: influence selection using coding
Activate BAdI selection option manually

You can manually activate the BAdI exit via the Selection Settings popup for a source table.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 30


Focus topic selection: influence selection using coding
Start the selection

Finally, go to the SAP Fiori “Migration Cockpit” app and start the selection of the migration project.

Make sure that you are not editing the migration object in transaction LTMOM.
Otherwise, you will be locking the migration object and the selection will fail.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 31


Focus topic selection: influence selection using coding
Selection result

The selection result is shown below.


As desired, only profit centers where the third character is equal to 1 have been selected.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 32


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2023 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. 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, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.
Week 3: Migration Object Modeler for Direct Transfer
Unit 6: Summary and Further Information
Summary and further information
Transitions paths recap

Approach Business Driver Transition Option Target

SAP S/4HANA Cloud,


System private edition
Start rapid conversion SAP S/4HANA
REUSE
with in-place conversion modernization

versus
REENGINEERING SAP S/4HANA Cloud,
with data migration Selective data private edition
Customer tailored Selective business transition SAP S/4HANA
process optimization

SAP S/4HANA Cloud,


public edition
New
SAP S/4HANA Cloud,
Business model implementation private edition
Highly standardized, with
best practices and based on innovation
a clean core SAP S/4HANA

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 2


Summary and further information
SAP S/4HANA migration cockpit – Facilitate business data migration

Tool of choice for Preconfigured Integrated in SAP Guided and safe Flexible and
migration to SAP migration content Activate migration extendable
S/4HANA specific to methodology
SAP S/4HANA

Part of SAP S/4HANA Comprehensive set of Proven methodology Step-by-step guidance Migration object modeler
and SAP S/4HANA preconfigured migration integrated in through the migration for custom requirements
Cloud (included in these objects, such as SAP Activate roadmap process
licenses) customers, suppliers, Ability to extend existing
and so on Best practices Preconfigured migration SAP migration objects
Ready-to-use solution objects
Automated mapping Integration of custom
Supports customers with between source data Data validation to objects
new implementations and SAP S/4HANA ensure high data quality
target values and consistency
Facilitates initial data
load, ensuring a Lower cost, project
consistent end user duration, and risk for
experience and simplified customers
data migration
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 3
Summary and further information
Sources to support you in your migration process

SAP Activate Methodology SAP Best Practices Data Migration Landing Page
(Roadmap Viewer) via Process Navigator on SAP Help
▪ Access implementation guidance for ▪ Access and download SAP Best ▪ Access documentation – Application
your digital transformation Practices content Help
▪ View and download SAP Activate ▪ Power your project with ready-to-run ▪ View additional slide decks and training
methodology assets and accelerators business processes information
▪ https://go.support.sap.com/roadmap ▪ https://me.sap.com/processnavigator ▪ http://help.sap.com/S4_CE_DM
viewer/#

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 4


Summary and further information
Migration approaches

Two different migration approaches, depending on the source system:

Migrate Data Using Staging Tables Migrate Data Directly from SAP System
(Direct Transfer)
▪ Staging tables are created automatically in ▪ Connect source system (ABAP-based SAP source systems)
SAP HANA DB (either locally or in a remote system) via RFC connection
▪ Populate these staging tables with business data ▪ Selection
using: – Based on predefined selection criteria (for example
– XML template files company code for ERP source system) and selected
– CSV template files migration objects
– SAP or third-party ETL tools – Can be adapted with the SAP S/4HANA migration object
modeler
▪ Supports data migration scenarios from
SAP ERP, SAP AFS, SAP APO SPP, SAP CRM, SAP EWM

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 5


Summary and further information
Migration approaches: comparison

Staging: Staging: Remote SAP HANA Direct transfer from


Manual
upload via XML upload via CSV database schema SAP ERP
▪ Fast ▪ Fast approach for ▪ Easier to handle ▪ Fill staging tables ▪ Data extraction
▪ Little preparation less complex for a developer directly included
Advantages
effort objects ▪ Rarely prone to ▪ Compatible with
▪ Simple approach formatting errors ETL tool
▪ High effort for ▪ XML formatting ▪ Various files ▪ Setup for ▪ Data cleansing only
high amount of can be challenging ▪ Additional file for integration required in the SAP ERP
data metadata ▪ Additional costs source system or
Disadvantages for ETL tool by excluding
records
▪ No write access to
extracted data
▪ Business user ▪ Key user ▪ Developer ▪ Developer ▪ Key user
▪ Small amount of ▪ Medium to high ▪ Medium to very ▪ Experienced in ▪ Developer in case
data amount of data high amount of data ETL tool of very complex
When to use ▪ Migration object is ▪ Very high amount of selection
missing data adaptations
▪ Customer with
SAP ERP system

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 6


Summary and further information
SAP S/4HANA migration cockpit – Further resources

Central landing page with information about the SAP S/4HANA migration cockpit
Training Material
Standard presentation Migrate Your Data to SAP S/4HANA
Link List – Available migration objects: link
Further Useful Release comparison of migration object templates Staging*
Documentation
Migration of Financial Accounting Master and Transactional Data
Video Library for data migration
Click-through demo: Introducing the SAP S/4HANA Migration Cockpit**

* For customers and partners only


** A one-time registration in SAP Learning Hub, edition for SAP Enterprise Support,
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC
is required. A detailed step-by-step guide on how to register.
7
Summary and further information
Preconfigured SAP S/4HANA sandbox system

Based on SAP S/4HANA 2022


SAP S/4HANA trial system (external link):
https://www.sap.com/cmp/oth/crm-s4hana/s4hana-on-premise-trial.html

Demo scripts for SAP S/4HANA migration cockpit (based on 2022 FPS01)
▪ File approach (bank)
▪ File approach (material)
▪ LTMOM – file approach (cost center texts)
▪ Staging approach (G/L accounts)
▪ Direct transfer approach (cost centers and activity types)
▪ LTMOM – direct transfer approach (cost center texts)
▪ Direct transfer approach (material)
▪ Direct transfer approach (vendor, CVI)

https://blogs.sap.com/2020/04/27/sap-s-4hana-migration-cockpit-
create-your-test-system/

System access for externals


External CAL: https://cal.sap.com/catalog#/solutions/b8a9077c-f0f7-47bd-977c-70aa6a6a2aa7
© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 8
Summary and further information
Bottom line

DATA MIGRATION IS IMPORTANT


It is one key task during the transition to SAP S/4HANA.

Unfortunately, it is often underestimated. It can’t be done


by just pressing a button.

Make sure to understand your data migration


requirement early and plan for it accordingly.

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 9


Thank you for participating
Good luck for the exam!

© 2023 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 10


Thank you.
Contact information:

open@sap.com
Follow all of SAP

www.sap.com/contactsap

© 2023 SAP SE or an SAP affiliate company. All rights reserved.


No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP SE or an SAP affiliate company.
The information contained herein may be changed without prior notice. Some software products marketed by SAP SE and its
distributors contain proprietary software components of other software vendors. National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or
warranty of any kind, and SAP or its affiliated companies shall not be liable for errors or omissions with respect to the materials.
The only warranties for SAP or SAP affiliate company products and services are those that are set forth in the express warranty
statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional
warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or
any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation,
and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platforms, directions, and
functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason
without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or
functionality. 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, and they
should not be relied upon in making purchasing decisions.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered
trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. All other product and service names
mentioned are the trademarks of their respective companies.
See www.sap.com/trademark for additional trademark information and notices.

You might also like