0% found this document useful (0 votes)
122 views37 pages

SAP S/4HANA Cloud Data Migration

This document discusses migrating data to SAP S/4HANA Cloud, public edition. It introduces the course objectives which are to explain data migration, the migration process steps, and how to use the SAP S/4HANA migration cockpit. It also discusses defining data migration requirements, the SAP Activate methodology, and resources available to support the data migration project.

Uploaded by

Vijayaw Vijji
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
122 views37 pages

SAP S/4HANA Cloud Data Migration

This document discusses migrating data to SAP S/4HANA Cloud, public edition. It introduces the course objectives which are to explain data migration, the migration process steps, and how to use the SAP S/4HANA migration cockpit. It also discusses defining data migration requirements, the SAP Activate methodology, and resources available to support the data migration project.

Uploaded by

Vijayaw Vijji
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 37

PUBLIC

openSAP
Migrating Data to SAP S/4HANA Cloud, Public Edition

Unit 1

[Link] This is our openSAP course, Migrating Data to SAP S/4HANA Cloud, Public Edition.
[Link] A very warm welcome from my side. My name is Claudia Gemm.
[Link] I'm from the Product Management of the Data Transformation and Data Migration team,
based in Walldorf.
[Link] My colleague, Elizaveta, and I will guide you through this one-week course. I'm happy to
start with this first unit,
[Link] introducing the data migration. First of all, let's have a look
[Link] at the learning objectives of this course. We are covering this week the data migration to
SAP S/4HANA Cloud, public edition.
[Link] This course is intended for users that are not that much experienced in data migration and
need to know the basic principles.
[Link] By the end of this week, you will be able to explain what data migration is,
[Link] what the different steps during a migration process are, and how to use the tool SAP
S/4HANA migration cockpit.
[Link] You will get a deeper knowledge of how you can use staging tables with XML and CSV
template files
[Link] to bring your data from your old legacy system into the public cloud. Furthermore, you will
be able to find further resources
[Link] that support you in your data migration project. In addition to this course, we have also
prepared a second openSAP course
[Link] called Migrating Data to SAP S/4HANA Using the Migration Cockpit, which starts on the
27th of September this year.
[Link] This course will cover details of migration cockpit related to SAP S/4HANA and the SAP
S/4HANA Cloud, private edition.
[Link] This three-week course deals with the functionalities there, including the different migration
approaches,
[Link] as well as the modeling environment. But now back to our course this week.
[Link] In this first unit, we will cover the transition scenarios of new implementation. What does it
mean?
[Link] We explain the data migration requirements, we have a look at the SAP Activate
methodology,
[Link] and I will show you the data migration landing page where you can find all the necessary
information you need.
[Link] To get to SAP S/4HANA, we see the three different transition scenarios,
[Link] which are probably already well known. SAP has two distinct products that can be deployed

[Link] as the cloud ERP core of the organization, the SAP S/4HANA Cloud, public edition,
[Link] and the SAP S/4HANA Cloud, private edition, which also comprises SAP S/4HANA on
premise.
[Link] We will not go into detail in these scenarios, but looking at the right-hand side
[Link] where the different target systems are listed, SAP S/4HANA Cloud, public edition,
[Link] which is our focus this week, is only available for new implementation environments.
[Link] The new implementation means to start with a new SAP S/4HANA Cloud system
[Link] for SAP S/4HANA in the on-premise environment, which is highly standardized
[Link] with pre-configured business processes. These best practice processes, based on the clean
core,
[Link] mean the standardized processes are always on the latest release in the cloud,
[Link] and the cloud provider manages the infrastructure. SAP S/4HANA Cloud, public edition is
the cloud-native ERP
[Link] that delivers the latest industry best practices and continuous innovation.
[Link] During this week, we will focus on how you will get your master in transactional data
[Link] that's needed to run your business processes into the new system. So what is our starting
point?
[Link] You decided to go with SAP S/4HANA Cloud, public edition. This means you have activated
your business process content and local versions,
[Link] defined the organizational structure, and completed product-specific configuration
[Link] for the SAP S/4HANA Cloud system via SAP Central Business Configuration, the CBC.
[Link] Now the question is, what do you need to run your business processes? The answer: data.

[Link] Master and transactional data. See some examples here.


[Link] Master data, very common, the customer, supplier, or the product and transactional data, as
account balances,
[Link] and probably also in the open items. To get the data in, this is what we call data migration.

[Link] Data migration is the process of selecting, preparing, extracting, and transforming data,
[Link] from one computer storage system to another. Additionally, the validation of migrated data
for completeness
[Link] and the decommissioning of the legacy data storage are considered part of the entire data
migration process.
[Link] Data migration is a key consideration for any system implementation, upgrade, or
consolidation,
[Link] and it's typically performed in such a way as to be as automated as possible,
[Link] freeing up human resources from tedious tasks. This brings us now to the new topic,
[Link] your data migration requirements. What are your requirements with regard to data
migration?
[Link] What are the source systems of your data? Which type of source systems are in place?
[Link] Do you have a central master data management? And further on, which data is needed
from your source system
[Link] to operate the SAP S/4HANA the way you want? Another question, migrate the data as is,

[Link] or is there a need to transform them on the fly? Are there any changes needed?
[Link] Is there any improvement in the data quality necessary? And the team, who needs to be
involved?
[Link] Who can make the decisions needed, and who are the major stakeholders
[Link] in your data migration project? A lot of questions to be considered.
[Link] The goal of a data migration project is not simply to move and transform data from one
system to another.
[Link] It is to ensure that the moved data is of high quality, is fit for use, and supports the
underlying business processes and operational goals of the organization.

2 / 37
[Link] In the next slides, you'll find resources that support you. There are different sources of
information to support you
[Link] in your data migration process. First, there is the SAP Activate methodology,
[Link] our roadmap viewer. Here, you have access to implementation guidance
[Link] for your digital transformation. You'll get an overview of activities
[Link] in the different phases of the roadmap. You can view and download all the assets and
accelerators
[Link] that are relevant for your specific situation. Second, you can use the process navigator
[Link] to consume the SAP Best Practices. It will enable you to optimize your project
[Link] with ready-to-run business processes. And last but not least,
[Link] our data migration landing page in the SAP Help Portal. Here, you can find all materials
related to the migration cockpit.
[Link] For example, the documentation, trainings, and deep dives. Let's have a closer look at the
different capabilities.
[Link] The implementation methodology for all SAP S/4HANA implementation projects is SAP
Activate.
[Link] The SAP Activate methodology includes a structure of project phases, tasks, and
deliverables
[Link] that vary based on the solution you are implementing. You will find this methodology
structure in the SAP roadmap viewer.
[Link] It is a central tool that guides your SAP S/4HANA implementation project by providing
specific instructions,
[Link] and supporting accelerators to help you execute tasks and deliverables throughout each
implementation phase and after go live.
[Link] The content is continuously updated to provide current and accurate information. The
structure of SAP roadmap viewer includes the phases,
[Link] the different stages of the project. At the end of each phase, a quality gate exists
[Link] to verify the completion of the deliverables. Deliverables are the outcomes that are delivered
during the course of the project.
[Link] Several deliverables are included within a phase. The tasks are activities to be performed.
[Link] One or several tasks comprise a deliverable. The work stream is a collection of related
deliverables
[Link] that show time relationships within a project and among other streams. Streams can span
phases,
[Link] and are not necessary depending on phase starts and ends. Finally, there are the
accelerators, which provide assistance
[Link] in the form of how-to guides, best practice recommendation, prescribed templates, and links
to learning materials.
[Link] Accelerators can be linked to phases, deliverables, or tasks. On this slide, you see different
activities related to data migration.
[Link] For data migration, you find activities and tasks in the workstream data management for the
phases prepare, explore, realize, and deploy.
[Link] Let's have a look. Here, you see the roadmap viewer,
[Link] and you can jump in, and here we go. Choose the right one.
[Link] And if you now select the data management here, you see we have our tasks
[Link] in the prepare, explore, realize, and deploy phases. And if you jump in, you find here all the
necessary tasks,
[Link] and go deeper, you have also your different accelerators. Let's get back to our presentation.

[Link] The process navigator by SAP provides access to all SAP Best Practices solutions.

3 / 37
[Link] It is a free service integrated into SAP for Me to make it easy to access SAP solution
scenarios,
[Link] solution processes, and contextual process information, such as integration, applications,
[Link] and implemented solution capabilities. Such solution process information in process
navigator
[Link] can include description of solution processes including business benefits and key process
steps.
[Link] The solution process flow is a representation of the business process to show the user
actions
[Link] and flow of data between apps. A test script describes a procedure for testing
[Link] according to the defined business process. Setup instructions illustrate a guidance
[Link] with instructions to complete setup activities required for the solution process to function
correctly.
[Link] This document is only relevant for certain processes, and often includes integration
activities
[Link] that must be completed before the test script can be executed. On the data migration
landing page,
[Link] you can jump into a wide area of information. We not only provide the documentation
[Link] for the migration cockpit itself, but also more additional materials
[Link] like development news, training, or access to the community.
[Link] On these pages, you'll find valuable information, even if you have not yet started your
migration project.
[Link] With this slide, our first unit ends. Now you understand why data migration is so important.

[Link] You are aware of how the SAP Activate methodology supports you, and how to find further
additional information.
[Link] Data migration is one key task during the transition to SAP S/4HANA.
[Link] Unfortunately, it is often underestimated, and can't be done by just pressing a button.
[Link] Make sure to understand your data migration requirements early, and plan for it accordingly.

[Link] In our next unit, I will explain why the SAP S/4HANA migration cockpit is your tool of choice.

[Link] Many thanks for your attention, and see you soon.

4 / 37
Unit 2

[Link] Welcome back to our second unit, with the topic, the tool of choice, SAP S/4HANA
migration cockpit.
[Link] My name is Claudia Gemm, and I will guide you through this session.
[Link] Let's have a look at the agenda. I will give you an introduction to the migration cockpit,
[Link] including the overall migration process. Further, we will focus on the data migration objects,

[Link] our migration content. We will talk about the mapping


[Link] and finally about the simulation and migration of data. As we have learned in the first
session,
[Link] the SAP S/4HANA migration cockpit supports our customers in the new implementation
scenario.
[Link] It is included in the license of all S/4HANA deployment options,
[Link] and can be accessed with the Migrate Your Data Fiori app in the launchpad.
[Link] Let's have a look at the main capabilities of our migration cockpit.
[Link] As already mentioned, the migration cockpit is an out-of-the-box solution.
[Link] It is included in the SAP S/4HANA licenses and shipment. As soon as you have your
S/4HANA system in place,
[Link] you can start working with the migration cockpit. As a user, you will be guided
[Link] through the complete migration process, starting with the selection of the migration objects,

[Link] which is our migration scope. Executing the mapping, the simulation,
[Link] and finally the real migration fun at the end. The migration cockpit covers the automated
mapping logic
[Link] between source and target system. Coming from any legacy system,
[Link] the data will be assigned automatically to the data structure of the S/4HANA data model.
[Link] Providing such a migration tool should lower your migration time and costs.
[Link] And as long as you keep working with the standard objects, no development skill is
required.
[Link] If you have a necessary adoption of your migration content, there is a modeling environment
available
[Link] where you can adapt objects to your own needs. Please note, in the cloud environment,
[Link] there is only a restricted scope available. You have already learned the complete migration
process
[Link] is integrated in our SAP Activate methodology, where you can find guidance to support you

[Link] during your migration project. This we have seen in unit one.
[Link] The pre-configured migration content, meaning our migration objects,
[Link] covers all the necessary migration business objects. You will need to apply your business
process in your system.
[Link] For what purpose is the migration cockpit designed? It is an initial data load tool
[Link] in the new implementation scenario. We only load master data and open transaction data.
[Link] Please keep in mind, historical data are not covered in a greenfield environment. We ensure
the full coverage of the migration objects for best practice processes,
[Link] and the migration cockpit is the only option to load data into the cloud. What is out of
scope?
[Link] It is not built to keep data in sync across systems, so there is neither data replication

5 / 37
[Link] nor continuous exchange of data between systems. Data cleansing is also not part of the
migration cockpit.
[Link] It is currently not supported to migrate data directly from SAP S/4HANA to SAP S/4HANA or
SAP S/4HANA Cloud.
[Link] A few more additional words on the migration of historical data.
[Link] Why do we not move historical data in a new implementation scenario?
[Link] The public cloud implementation is, by definition, a new implementation,
[Link] which means starting with new, clean business processes and leaving the old world behind.

[Link] From a functional perspective, the S/4HANA public cloud edition does not require
[Link] any historical data in order to work correctly. To make it more transparent,
[Link] do you remember the last time you had to move house? Which of all these boxes full of not-
required things
[Link] did you actually unpack in your new house? We are starting in a new implementation area
in the public cloud,
[Link] meaning you probably make a business process re-engineering and start from scratch.
[Link] In addition to this, you see some example to make it more clear.
[Link] The migration of closed documents leads to postings that are already included in the
balances.
[Link] There are simply no open items for those documents anymore. Or for partially open items,
[Link] only the remaining quantities or values should be migrated. Let's step into the migration
process.
[Link] You see here an overview of the different steps. You start with selecting the migration
objects.
[Link] With activating your scope items, that means defining your business processes,
[Link] you have all necessary migration objects provided in the migration cockpit.
[Link] You can select them as per your needs. The list of migration objects provided
[Link] in the migration cockpit can differ. Therefore, from the list of all available migration objects,
[Link] you only get to choose from the migration objects that relate to your activated scope. The
second and big step is to get the data relevant
[Link] for the load in the target system. For this activity, you can use the template files,
[Link] which are provided for each single migration object. We will have a closer look in the next
unit.
[Link] The third step is map and transform data. If you have the requirement to rename
[Link] or renumber a single object, you have an action point here. For example, you define a new
cost center hierarchy
[Link] and need to transform them from old to new. As we use standard APIs to post the data into
SAP S/4HANA,
[Link] all logical checks are performed to guarantee consistent data.
[Link] During the simulation, data is not posted yet to the database, only simulated, and in this
phase, you can check if the objects have all necessary information
[Link] so that they can be processed by the underlying API. In case of errors, for example a field
entry has the wrong format
[Link] or a mandatory field displaying, you can correct them and run the simulation again until all
errors are solved.
[Link] As a final step, you execute the migration. I already talked about the migration object.
[Link] What is a migration object? Each migration object represents a business entity
[Link] in your S/4HANA system. Very popular objects are customers, sales orders,
[Link] or G/L account balances, open items. They encapsulate the logic

6 / 37
[Link] to create the specific business entities through the corresponding APIs.
[Link] They are delivered by SAP based on SAP Best Practices configuration
[Link] and ready for immediate use. We categorize them in master data and transactional data.
[Link] As you already know, historical data are not in scope. All migration objects contain the rule

[Link] for handling values from source to target, which is called mapping or field mapping.
[Link] And if we are talking about the migration content, then we talk about the sum of all migration
objects
[Link] available in the migration cockpit. What about updates on migration objects?
[Link] Updates are shipped automatically by SAP. For instance, when a new standard field
[Link] was defined as migration relevant and thus added to the relevant migration object.
[Link] In this case, you were prompted to perform an update in your migration project
[Link] if such an updated object is already in use. Where can I find information about the migration
objects?
[Link] In our first unit, I already showed you our SAP S/4HANA migration landing page.
[Link] On this landing page, you can find the object-based information,
[Link] which leads you to the object where you can search for object information you need.
[Link] Let's have a look in the SAP Help Portal. Here you can see a list of the available migration
objects.
[Link] So you can click the link of the single migration objects. Let's choose the customer.
[Link] And here you see some general information, what is in scope, what is out of scope,
[Link] what is not covered, features, and all the dependencies, and, if necessary, some general
migration information.
[Link] And if you scroll down to the Post-Processing section there you can find the information
[Link] how to validate your migration in your new system. So you see the app that is required,
[Link] and also the business role that is required to display this information.
[Link] Good. Let's go back to the slides.
[Link] Even if you do not have access to your S/4HANA system, you can already check what is in
scope
[Link] for a single object or what are the pending objects. This supports you to plan your initial load

[Link] at a very early point in time in your data migration journey. With this slide, I want to explain
one big advantage
[Link] of the migration cockpit, the automated mapping between source and target.
[Link] Mapping means to assign source values that were extracted from the source system
[Link] to the values and formats of the SAP S/4HANA system. You see an example here.
[Link] The migration cockpit is shipped with this information by using one-to-one mapping or rules,

[Link] which are already predefined. The mapping itself needs to be maintained once in a project
[Link] and will be used for all migration objects assigned. This helps to reduce errors in the
preparation.
[Link] Providing such an automated mapping makes it not necessary to provide source data in a
format SAP S/4HANA would expect.
[Link] The last step in our migration process is to simulate and migrate.
[Link] Data is posted to the SAP S/4HANA system using standard APIs. Therefore, data is created
like it would be created
[Link] when entered manually in the system. All logical and semantic checks are done in the API

7 / 37
[Link] and keep the system consistent after the data load. During the simulation process, no data
is written to the target SAP S/4HANA system,
[Link] but you can view all the messages that would occur during an actual data transfer.
[Link] For example, information about a cost center that does not exist. Objects can be simulated
or migrated one by one.
[Link] It is important to keep any dependencies between objects in mind. A typical example is
master data before transactional data.
[Link] There is no migration at database level. It is possible to simulate or migrate only specific
migration object instances,
[Link] single instances, or a set of instances, and this is very useful, especially at the beginning of
a migration project.
[Link] Now we reach the end of the unit two of our course. You have now an overview about the
migration process
[Link] in the SAP S/4HANA migration cockpit. I have explained what the migration cockpit is used
for
[Link] or even not. And finally, you know where to find information
[Link] about the migration objects. In our next unit,
[Link] I will demonstrate the described process in a system. Many thanks for your participation.
[Link] Goodbye, and see you soon.

8 / 37
Unit 3

[Link] Welcome back to unit three of our openSAP course. Now, we are finally getting started with
the migration cockpit.
[Link] My name is Claudia Gemm, and I will be your guide through this very hands- on unit.
[Link] We have a very short agenda in this unit. Before I show you a demo in the system,
[Link] we will have a look at the system setup. You access the Migrate Your Data migration
cockpit app
[Link] from the launchpad. When you open the app,
[Link] in an SAP S/4HANA Public Cloud system, the migration approach is migrate data using
staging tables.
[Link] A staging table is a database table used to store your business data to be migrated.
[Link] There are different possible options to work with these staging tables.
[Link] The standard way is to use template files, either XML or CSV.
[Link] Another possibility is using an ETL tool of your choice to fill the staging tables.
[Link] This will be discussed in unit eight. So now, how does it work with the template file?
[Link] The users create one or more migration projects in the Migrate Your Data app
[Link] and assign the relevant migration objects to the project. For each migration object,
[Link] you download the corresponding template, open and populate the template,
[Link] then upload the template file and follow the guided migration steps
[Link] to correctly map and complete the migration. SAP delivers template files for migration
objects
[Link] in the SAP S/4HANA migration cockpit. You can download the file in XML or CSV format
[Link] and open the file in Microsoft Excel. Working with the migration cockpit
[Link] requires special authorizations. The role SAP_BR_CONFIG_EXPERT_DATA_MIG
[Link] is required, and additionally, the corresponding business catalog roles
[Link] for each of your migration objects, which is described in the individual object documentation.

[Link] Let's have a look at what the system setup with a local SAP HANA database connection
looks like.
[Link] This is our starting point. On the left-hand side, you have your source data stored in any
kind of legacy system.
[Link] On the right-hand side, we see the SAP S/4HANA public cloud system,
[Link] where the migration cockpit is already available. The S/4HANA system has an integrated
SAP HANA database,
[Link] where all application tables are located. So now, what happens when you use the migration
cockpit?
[Link] First, when you create the migration project, you are asked about the location of the
database
[Link] for the staging tables. As mentioned, the standard use case is to use
[Link] local SAP S/4HANA database schema. As soon as you select the migration objects
[Link] that are in scope for your project, the corresponding staging tables are created
automatically.
[Link] The number of staging tables for one migration object can vary depending on the underlying
table structures.
[Link] A customer master has much more structures and more staging tables than a cost center.

[Link] You fill these staging tables via XML or CSV template files.

9 / 37
[Link] This is a topic in one of the following units. The migration cockpit gets read access to the
staging tables
[Link] and consequently, to the data uploaded in these. During the data load,
[Link] meaning during the step migration in our process, the migration cockpit uses APIs to insert
the data
[Link] into the corresponding application table. Afterwards, the migration cockpit sets a status
update
[Link] for each process record in the staging table. Example, process or error.
[Link] Amongst others, the status set is important to avoid further migration of already loaded data.

[Link] This is valid within one project, as the staging tables are assigned on project level.
[Link] Let's jump finally into the system. In this demo, I will show you how you can use
[Link] the SAP S/4HANA migration cockpit to migrate your data using the staging tables.
[Link] This is an SAP S/4HANA cloud public edition system in the Horizon theme.
[Link] You open the Migrate Your Data app. This will bring you
[Link] to the Migration Projects overview screen, where you can view all the migration projects
[Link] that already exist in the system. We define a filter to reduce the number of projects
displayed.
[Link] Let's create a new project. You see two entries here.
[Link] The first one, Migrate Data Directly from SAP System, is not yet generally available.
[Link] Further details and outlook will be explained in the last session of this course. We are
focusing in the next units
[Link] on the Migrate Data Using Staging Tables, shortly called Staging Tables.
[Link] Therefore, we choose this entry. This will take you to a two-step procedure.
[Link] Under General Data, you specify a name for your project. Let's call it openSAP Staging
demo.
[Link] You decide whether you want to create staging tables in an internal schema of the SAP
S/4HANA Cloud system
[Link] or in a remote SAP HANA database schema. Our use case is to use
[Link] the local SAP S/4HANA database schema. Press enter.
[Link] The second step will appear. Under Migration Objects,
[Link] you can find a list of all delivered migration objects depending on your scope items
activated.
[Link] For more information about the migration object, you see here the documentation.
[Link] And also, you see the predecessors that are relevant for the single objects.
[Link] So you can click and you get the list of the predecessors. Now, for our very simple example
project,
[Link] we select the migration objects bank and cost center. You can also use the search bar on
the top,
[Link] and you can even drag and drop your object, or move with the arrows.
[Link] We click Review. And now, we see the information about the predecessors,
[Link] which I'm able now to add or even not to add. We choose Do Not Add.
[Link] In this screen you have the chance to edit again your general data,
[Link] or you can also add further migration objects. So for us, everything is fine,
[Link] and we create the project. This brings us back to the Migration Project overview screen
[Link] with all the projects listed. To open the project, just simply click.
[Link] This is the migration project screen, the one that gives you an overview on the whole project

10 / 37
[Link] and also guides you through the complete migration process. You see, they are currently
not ready for processing.
[Link] This means the standard objects will be copied to your migration project,
[Link] so you can work with them independently. The first column, you find the migration object.
[Link] In our case, only the two, bank and cost center. And the next column, Data, indicates how
many staging tables were created.
[Link] Furthermore, there are columns like Mapping Tasks, Simulation, and Migration.
[Link] And in the Action column, you find a dropdown list
[Link] for all steps to be performed for the migration. The system proposed the next logical step.
[Link] At the very top you find different buttons like Monitoring, Mapping Tasks, Job Management,
Settings,
[Link] and also, for Finished Project. But this is now only some words
[Link] on the general layout of this screen. We now want to proceed with our project.
[Link] The staging table is empty. We have zero instances.
[Link] We need to populate them with data now. And the system proposed Download Template.
[Link] You find two different options here, XML or CSV. Template files are provided by SAP
[Link] for every pre-delivered migration object. For now, we go for XML, and more details on the
CSV files will be presented in the next unit.
[Link] So we open our file. And now you see...
[Link] Better. You have different worksheets here.
[Link] In the first one you have an introduction that provides you detailed information
[Link] about how to enter the expected data. So please read this carefully.
[Link] In the Field List worksheet, you have a list of all fields used in this migration object,
[Link] including the information on mandatory fields. So this is a very simple object.
[Link] You can have many more fields and more worksheets as for different data structures.
[Link] And finally, we have the worksheet for the real bank master, where we can now enter our
data.
[Link] Important, in row 8 is more information about the expected
[Link] format length of the different fields. And you see here,
[Link] the columns with the star are the mandatory fields. So, we see here, for instance,
[Link] the bank key, here are examples that the length must be specific for different countries.
[Link] So we take this example, and so, okay, we have a German bank, DE, Germany.
[Link] And we have a length of eight. So we just simply enter eight numbers here.
[Link] And we have an Italian, which have, we see here, a length of 10.
[Link] Okay, and here we have our, openSAP Bank DE.
[Link] And the openSAP Bank for Italy. Now we can enter maybe...
[Link] Also, it's not mandatory but we do this, we have it here, Walldorf.
[Link] And the Italian one is located in Rome. So, we do not have more fields with the star here.
[Link] You can check this also again here, we have three mandatory fields,
[Link] these are the very beginning ones. And now we can save this.
[Link] It's important that you keep the provided format. Say yes.
[Link] And now, we jump back to our migration project.
[Link] And you see here, the next activity is to upload the file. So we can do this, you can use here
the upload.
[Link] And here we have a drag and drop possibility. And now you see a validation is scheduled
[Link] where the system checks if, for example, all the mandatory fields are already filled.

11 / 37
[Link] And finally, we have the information that the transfer was done successfully.
[Link] Okay, let's go back to our project. And now you see here we have two instances
[Link] uploaded in our staging tables. So now the next activity is prepare.
[Link] This is a very important step. It's a technical step, which needs to be run
[Link] every time you have entered data or changed data in your staging table. You see in the
running activity, there's a job planned.
[Link] You get also the information here. And as soon as the preparation is done,
[Link] we can move on with the next step. You have also the possibility to jump into the
Monitoring,
[Link] where you can see all the jobs already done, or even still running, and our Prepare step is
now completed.
[Link] So if you move back to the project. You see now, the next tasks are the Mapping Tasks.
[Link] We have two open tasks to be checked, if necessary adjusted,
[Link] or even finally confirmed. So you can jump into it by choosing the next activity or you can
also go here,
[Link] click this link and you see we have the two mapping tasks that need to be confirmed.
[Link] If you are at the end of the project, you can confirm these tasks directly,
[Link] if you choose all and confirm it here. But at the beginning of the project,
[Link] you should always go into the single mapping task, check the values,
[Link] and confirm them or not. So here you see you have the chance to change the bank key, if
necessary.
[Link] From our point of view, everything is fine. You can select them here, all, and confirm it on
this level,
[Link] or you can do it one by one. So, Confirm.
[Link] So finally, we have one more mapping task to confirm. Here we have the country keys.
[Link] So these are also not changed and I confirm this in the top for all entries in one step.
[Link] Now you see to be confirmed is now zero. But you can also check this again if you choose
the already confirmed.
[Link] And you have also again this overview in the previous task to see if everything is on green
and confirmed.
[Link] Okay, let's go back. You see now it's switched to done.
[Link] Everything is fine. Now we should start with the simulation.
[Link] So here you have the chance to say, okay, I want to do is for all instances.
[Link] Or you can say, okay, I do not want to have it for all in one step, I just want to have it for
10%.
[Link] Or you can also choose your own selection. As we do have only two instances,
[Link] we start the simulation. And here, you see again,
[Link] there is a job planned in the background for running activities.
[Link] And the simulation, meaning the API, is now checking if all the relevant data are in place.
[Link] You can also jump into the monitoring. And here you see the simulation is done.
[Link] In case of errors, you have here the chance to check the messages. And the final step is the
migration.
[Link] And we are pretty sure that everything is fine. We start the migration again for all instances.

[Link] You get a warning that you are now doing the re-conversion.
[Link] We say yes and start our conversion. Let's jump in there.
[Link] Here the job is planned, it's running. And you can check.
[Link] Now you see here the Running step. We have now the job started.

12 / 37
[Link] We are almost at the end. We can now go back.
[Link] And you see here the green progress bar shows you how much of your data is migrated
successfully,
[Link] or even have an error, then you can see it here.
[Link] Now I want to check my migration result. For this, I can select my migration object
[Link] and go to the Migration Results. And here you have
[Link] the list of all your information with old keys and new keys. This is now old, we have not
changed our keys,
[Link] that's why it is the same. You can change this display as per your needs
[Link] by using this gear icon. And to be able to send it to your business units
[Link] for checking the migration result you can also download it.
[Link] You can jump directly into the application as well. So if you click on the link behind the key,

[Link] then you see there would be a second window opened with the additional app for bank
master to show.
[Link] We do not want it. We want to download our results.
[Link] Also here you have the chance to check which fields you want to see and to download.
[Link] And now you get here a message saying that you find the created file in the Monitoring.
[Link] So let's see it, jump into the Monitoring. And besides all the activities and messages you
can check here,
[Link] you are also able to download the file here. And that was the complete migration process.
[Link] And our demo ends here. And we go back to our slides.
[Link] More functions will be explained in the next units. Also, check the application help
[Link] about the different screens, the functionality, and the process steps.
[Link] Before we close this unit, I want to show you one more important function of the migration
cockpit,
[Link] the mass processing, which supports you to do trigger actions on selected items.
[Link] You can use this mass processing for different actions during your migration process,
[Link] simulation, migration, or deleting instances from your staging table. You can define your
own filters
[Link] to select or limit the number of instances. In the next step, you have the chance to check,
[Link] verify the instance list based on your filter and, if necessary, you can move back
[Link] and adjust your selection. And finally, you will get a better summary about your selection
criteria
[Link] and the number of affected instances. Choose Start to run your actions,
[Link] which is here, the simulation. This function within the migration cockpit
[Link] provides you the opportunity to run explicit instances, for example to start with initial tests of
single records
[Link] to prove the transformation logic. We have this system demo also a separate video
available.
[Link] Feel free to have your own recap. Further, I want to give a hint on two other videos.
[Link] Using CSV Files to Fill Staging Tables is an outlook on our unit four. And the clickthrough
tutorial provides, again,
[Link] the overall migration process with the migration cockpit. Please keep these main functions
in mind
[Link] when working with the SAP S/4HANA migration cockpit. Follow the guided procedure
through your migration project.
[Link] The Prepare step is important. Run it whenever data is added to the staging tables.

13 / 37
[Link] Use the template files delivered with our migration objects and fill them via XML or CSV
files.
[Link] Use the function of downloading the mapping task templates for handover to your business
units.
[Link] Check the monitor to see running jobs, access messages, and download files.
[Link] The mass processing supports you to trigger actions on specific number of instances.
[Link] Use this function to start a controlled testing. And with this, we close our unit three.
[Link] You had your first experience on how to use the SAP Fiori app Migrate Your Data
[Link] to load data to SAP S/4HANA Cloud, public edition using the migration cockpit.
[Link] In the next unit, my colleague Elizaveta takes over. She will show more insight on how to fill
staging tables.
[Link] I wish you good luck for the upcoming units. Thanks again for your attention, and bye.

14 / 37
Unit 4

[Link] Hello and welcome to unit four, Filling the Staging Tables.
[Link] My name is Elizaveta and I am part of the product management team
[Link] of SAP S/4HANA migration cockpit. Today I will start the presentation
[Link] with the ways to populate data to the staging tables. Then I will give you an overview
[Link] on the XML and CSV template files. Afterwards, I will show you the demo on the CSV
upload,
[Link] how you can upload CSV files to the migration project. After the demo, we will see the
difference
[Link] between XML and CSV template files and check other possibilities of filling the staging
tables.
[Link] Finally, I will inform you where you can find further information on the topic,
[Link] filling the staging tables. First of all, you can fill the staging tables
[Link] by using XML files, CSV files, or your preferred ETL tools. Please note that the size limit
[Link] for each file is 100 megabytes. Of course, you can upload multiple files at once
[Link] by using a zip folder. Please note that the combined sizes
[Link] of the files that you can add to the zip folder should not exceed 160 megabytes.
[Link] There is no limit for the staging tables themselves, I need to mention it as we get this
question very often.
[Link] And also I would like to remind you that you can save more data anyway in the CSV files
[Link] than in the XML, because of the CSV data structure. Let's now turn to the XML files.
[Link] You can find more information in the following KBA that you see on the slide.
[Link] Let's talk about XML template files. When you are working with the XML template files,
[Link] firstly you download the template file, and when you open it, the first thing you see
[Link] is the Introduction tab. Please check the Introduction worksheet
[Link] for the information about how to fill the template file. In there you can also find that you
cannot exceed
[Link] the particular size of the file, or what is not allowed to be done in the template.
[Link] In short, you find information on how to work with a template in this tab.
[Link] Afterward, please check the field list. For example, the mandatory fields,
[Link] as it is shown on the upper screenshot for the Bank migration object.
[Link] In there you will find also the data type, length of the field, and you can also expand the
columns
[Link] SAP Structure, to check the name of the staging tables, and SAP Field, to check the
technical names of the field.
[Link] The next steps after introduction and field list represent the staging tables.
[Link] For Bank, for example, we have only one staging table, and in this table,
[Link] as it is shown on the second bottom screenshot, you can unhide the rows four, five for the
technical names
[Link] and expand row eight for the field description. For example, what is Bank country key?
[Link] What is Bank key? On the slide, there are some recommendations
[Link] of how to copy and paste values to the table depending on where you copy this data,
[Link] within XML file, from Notepad, or from somewhere else. You can check this information
when you actually will try
[Link] to fill the template files. Okay, that was it about XML, what about CSV?

15 / 37
[Link] When you download CSV templates, you get a zip folder with CSV files.
[Link] Each of them represents one staging table. You can see it on the left screenshot.
[Link] For basic data, for Product migration object, you have S_MARA CSV file.
[Link] It is highlighted on the left screenshot. And in the right screenshot you can see
[Link] that in the migration cockpit you will find the staging table with the technical name
[Link] that corresponds to the CSV file. You can find more information in the Help Portal
[Link] about unloading template files. In the overall, using CSV format is a flexible way
[Link] to populate staging tables, and it's a very known compatible format for migrating data.
[Link] It should be easier and faster to fill the staging tables with CSV files
[Link] if you have already used them before and have experience in using them.
[Link] Therefore, we still say that CSV upload is an expert option and recommend using it if you
have already worked
[Link] with CSV files before. This option appeared later in SAP S/4HANA Cloud
[Link] than XML files, it has been improved every release.
[Link] In the latest version you can maintain only the data that should be migrated,
[Link] so you should not fill the empty fields how they were before. It is quite flexible and we will
see it in the next slide.
[Link] On the left side, you can see the empty template, and on the right side, the filled template.

[Link] The empty template for the cost center migration object has the header data,
[Link] and in there you see the fields in the following order, cost center, valid from, valid to.
[Link] When we fill the template on the right screenshot, we can change the order of the fields
[Link] and delete the fields we don't use. In the filled template,
[Link] we put the cost center name on the first place, then we have description,
[Link] and only then cost center, valid from, valid to fields. Of course, if you change the order,
[Link] do not forget to change the order of the header, it will not be mapped automatically.
[Link] The next subtopic is naming convention. The CSV file names consist of two parts,
[Link] data structure name and optional user input. When you fill the templates,
[Link] please do not delete the data structure name, so the first part of the name.
[Link] It will save you time by the CSV upload because the migration cockpit will recognize
[Link] which staging table should be filled. If you ignore the naming convention,
[Link] you will need to do some additional steps, such as map the file to the data structure,
[Link] validate data, and only then transfer data to the staging tables.
[Link] Before proceeding with the demo for CSV files, there is something you should know about
the settings
[Link] of the CSV file option. Please check the settings before you even download the templates
[Link] because there are different possibilities, for example, for the field delimiter.
[Link] By default, you have comma as the delimiter in your settings, but you can change it to
semicolon and tab.
[Link] If you change it to semicolon, you will be able to download the template
[Link] with a semicolon delimiter. Great, now is the demo time.
[Link] I will show you how to fill the staging tables with CSV files.
[Link] I have already prepared the project for the demo. My project name is Demo_Staging_CSV.
[Link] I have added two migration objects in there, Bank and Product.
[Link] I will work today with the Product migration object. We had three open mapping tasks for the
Product,

16 / 37
[Link] I already confirmed them. For the complex migration objects,
[Link] such as Customer or Supplier, there are some control perimeters, or fixed values,
[Link] that you need to maintain before uploading any data, for example, internal, external
numbering, and so on.
[Link] The first action which is proposed by migration project is Download Template.
[Link] I click it, and we need to choose between XML file and CSV file.
[Link] I choose CSV Files. Okay.
[Link] I expect to get a zip folder with CSV files for every staging table.
[Link] We have 17 staging tables for the Product migration object, that means I expect to have 17
CSV files.
[Link] I open the zip folder and I see that I have 17 CSV files,
[Link] but they're empty, this is the template. I open the basic data
[Link] to show you how the template looks. So I open S_MARA.
[Link] When I open my CSV file, I see the header data, I see the key fields with a K in the brackets

[Link] and asterisks that stand for mandatory fields. Okay.


[Link] I see a lot of data in the header, and now I will show you the file
[Link] that I prepared for the demo. I have already filled the file.
[Link] I have prepared basic data for Product migration object and also additional staging tables.
[Link] I will show you how the basic data looks. The filled template.
[Link] As you can see, I deleted the unnecessary fields and left only the fields that I need to
migrate.
[Link] My delimiter is comma and I will try to upload these two instances
[Link] for the Product migration object. I have prepared more CSV files.
[Link] So the one that I showed you, the technical name is MARA, which stands for Basic Data.
[Link] And I prepared another eight CSV files. I will upload the zip folder,
[Link] go back to migration project, and I click the next action, Upload File.
[Link] It is the same for XML and CSV files. What I will do, I will just drag and drop the zip file
[Link] to the migration cockpit. And what you see, a CSV folder is created
[Link] in the migration cockpit. As you can see, the status now is File Uploaded.
[Link] Soon after some checks, it will be changed to Validation in Process.
[Link] And I expect to see the status that data is successfully transferred to staging tables.
[Link] Okay, now I can open the CSV folder. I can see all my files in there.
[Link] As you can see, CSV files are already mapped. Following naming convention,
[Link] we skipped several steps in the CSV folder. For example, we didn't do Map Files to the data
structure,
[Link] and we also skipped Validate Data and Transfer Data to Staging Tables.
[Link] By skip, I mean we didn't do it manually, it was done for us.
[Link] Therefore we see the status, Data Successfully Transferred to Staging Tables.
[Link] I go back to the project view. I can see that two instances were created,
[Link] and when I click the instances, I can check the data that was uploaded
[Link] to the staging tables. Okay, the upload was successful.
[Link] In the next part of the demo, I would like to show you how you can upload single CSV files.

[Link] If you remember, we uploaded the zip file that contained nine CSV files,

17 / 37
[Link] but what happens if we need to upload any additional data? I have prepared the example
for that
[Link] and named this example "Product MARA more fields".
[Link] I go to the Upload File screen again. Of course I can upload the additional file
[Link] to the existing folder, or better I create a new one.
[Link] So let's see the alternative way. I Create CSV Folder and upload the files in there.
[Link] I can rename it to "Additional data", Create and Open.
[Link] As you can see the status Files Missing for Mandatory Data Structures
[Link] and there are no files provided because we didn't upload any files yet.
[Link] I only see the name of the staging tables, and I see also the status Missing or No File
Provided.
[Link] So I drag and drop the file with the additional instances to the CSV folder.
[Link] I would like to emphasize that I do not use naming convention.
[Link] As you can see, the file name is Product MARA more fields, there is no technical ID
included in the name.
[Link] And the first thing I get, I get the error, Not Mapped to Any Data Structure.
[Link] So the file is not mapped. I can click Show Messages, check the error.
[Link] In the error I see "Choose the 'Map Files' button". I go back.
[Link] Okay, I go back and select the file and click Map Files.
[Link] You can choose any data structure, but in this case we need to choose Basic Data.
[Link] Map Files. The status has changed.
[Link] Okay, as you can see in Data Structures the status has changed to Mapped,
[Link] and the next step, what I need to do is I need to validate the data.
[Link] I click Validate Data. Validation is scheduled.
[Link] Validation Completed Successfully. So now I can transfer data to the staging tables.
[Link] I click this button. In this case I do not have any duplicates
[Link] so it doesn't matter which option I choose, so I choose Skip Files with Duplicates
[Link] and select Transfer Data. Transfer is scheduled.
[Link] We see the status Data Successfully Transferred to the Staging Tables,
[Link] and now in the project view we will see four instances. Okay, that was it, and back to our
slides.
[Link] Now you have seen the overview on XML and CSV file, and even seen the demo for the
CSV file upload,
[Link] it's time to check the differences between them. XML file is a convenient template
[Link] to enter the values manually. All data is contained in one file.
[Link] You find detailed instructions, information on the fields in the file itself.
[Link] For the CSV template, you need to use a separate CSV document for each data structure.
[Link] You will find more information in the readme file provided for every migration object
[Link] when you download the template. We recommend to use CSV
[Link] if you have worked with this format before and used to extract data
[Link] from the database tables. There is one more slide about the difference of XML and CSV.
[Link] Visually you see that single CSV files represent one worksheet in the XML template file.
[Link] To fill the staging tables, you can either use an ETL tool or fill data directly on the SAP
HANA database.
[Link] The blogs listed in the presentation may be helpful for how you bring data to the staging
tables.

18 / 37
[Link] You may want to use, for example, SAP HANA smart data integration.
[Link] Clearly it's not part of migration cockpit product management team,
[Link] but we are glad to guide you to where you can find more information about it
[Link] and check the FAQ KBA, which help you to decide how it is more convenient for you
[Link] to fill the staging tables. There are several blog posts listed below
[Link] that explain the different methods to load data into the staging tables.
[Link] Where to find more information? In the Application Help
[Link] it is described how to use migration cockpit step-by-step. We have also a five-minute demo
for XML and CSV upload,
[Link] and we have KBAs, one is for XML and one for CSV. In this unit you have learned
[Link] how to fill the staging tables, got an overview on the XML and CSV templates,
[Link] and now you also know where to find additional information on filling the staging tables.
[Link] I hope you enjoyed this unit. In the next step we will see how to handle issues
[Link] during the migration process.

19 / 37
Unit 5

[Link] Hello and welcome to unit five, Issue Handling During the Migration Process.
[Link] In this unit I will talk about business partner concept. I will show you different ways how to
check error messages
[Link] and even do the demo. I will talk about the correction file, what that is,
[Link] and how you can create it. And at the end, I will give you some information
[Link] about handling duplicate key errors. Let's turn to the business partner concept.
[Link] As you may know, business partners is a leading object in SAP S/4HANA, and all
customers and suppliers should be migrated as business partners.
[Link] What is the recommendation there? Firstly, you need to migrate the customer data
[Link] with the customer migration object. Afterward, you should use the supplier – extend existing
record by new org levels
[Link] migration object to add the supplier data.
[Link] The process is described in the KBA that you see on the slide.
[Link] If you have any issues, please refer to the collective KBA note. In the next slide
[Link] we have collected all the migration objects related to the customer and supplier.
[Link] In case you want to add any additional information, you can use this table to check which
objects are available.
[Link] You can check it after the session. This was it about the business partner concept for SAP
S/4HANA Cloud.
[Link] The next topic is how to check the error messages, and we turn to the next slide.
[Link] If you have already tried migration cockpit, you may have faced different types of errors.
[Link] And sometimes you have several messages for one instance. Sometimes you have the
same message for several instances.
[Link] And it may happen that you have messages for different activities. You can check all these
error messages at different places,
[Link] different buttons or functionalities in migration cockpit. Firstly, I will briefly give you an
overview
[Link] on these places or buttons where you can check the error messages, and then I explain in
the next slides
[Link] each of them in more details. I have decided to show you these possibilities
[Link] by answering the different questions. Usually when you completed, for example,
[Link] the particular activity, simulation, or mapping task, you want to know which messages
occurred for an activity.
[Link] You can check it in the monitoring. If you get an error message,
[Link] you are asking which instances need to be checked. You can check this in the messages
project view.
[Link] When you think about which messages occurred for one particular instance, you should
check messages in the instance view.
[Link] And if your question is which messages occurred during the last simulation migration run,
[Link] you can check history in the particular migration object. All of these functions are different
buttons
[Link] located in the migration cockpit. We will now check all of them.
[Link] First question, which messages occurred for an activity? You are in the migration project
screen.
[Link] In the top-right corner, you can see the monitoring button. You click it,
[Link] and in there you can choose different filters. For example, you can filter the activity,

20 / 37
[Link] choose Simulate Data, and select Completed with Errors
[Link] to see all the messages containing errors for this simulation run.
[Link] In the monitoring you can see all activities related to the project, from the project creation till
the migration.
[Link] The next question is, which instances are relevant for one message?
[Link] You got an error for the product, for example, and we're in the migration project view.
[Link] And we'll see, we'll get some errors for the product migration object. Select the migration
object or objects and click Messages.
[Link] When you click Messages you have a separate screen for different migration objects.
[Link] You can toggle between them. In this screen, the list of the messages,
[Link] and you can see how many instances got this message. For example, in this case we have
the error message.
[Link] Some mapping tasks are not yet confirmed, so maintain value conversion.
[Link] And there are two instances for which this error message occurred.
[Link] You can click the message or click the number 2, and then you see more information.
[Link] The key fields for the instances, for example, and you see that for the key fields, MIG_008,
MIG_009,
[Link] you need to confirm the mapping values. If you ask which messages occurred
[Link] for one particular instance, we are in the migration project view and get some errors.
[Link] What we do to get the errors for the particular instance, we click on the error number.
[Link] And in the next screen we see the list of the instances. Then we click the error for the
particular instance,
[Link] and then we get the list of the messages for this instance. We can download the list in the
Excel,
[Link] and you can see messages related to the latest activity. If our question is,
[Link] which messages occurred during a simulation migration run for a migration object, for
example, usually a project manager asking that
[Link] they would like to see the statistics of how many messages occurred
[Link] for the second simulation run, for example. In the migration project view,
[Link] we click on the name of the object, for example, Bank, and we have different tabs in there,
[Link] and we choose the History tab. We see simulation completed with errors,
[Link] and click Show Messages and see all the messages relevant for this simulation run.
[Link] Now it's time for a demo. In the demo, I will show you four ways to check the error
messages.
[Link] We have seen them already in the slides, and now we see it in the system.
[Link] I have prepared the project where I have got errors in product migration object.
[Link] The last step that I did, there was simulation, and I got two errors in there.
[Link] I would like to see all the messages for the simulation activity.
[Link] So if I would like to see all the messages, I go to the Monitoring screen
[Link] and choose the activity that I want to see, in this case it's simulation.
[Link] I also can filter the errors, completed with errors. So I found my activity, Simulate Data.
[Link] I have a lot of messages. I click Show Messages.
[Link] And also I filter the errors and see the list of the errors,
[Link] error messages for the simulation run, the last simulation.
[Link] I also can export this information to the Excel file and I will see the same information,
[Link] so I will see the message title, I will see message class, message number, date and time.
[Link] Go back. Okay, now we go to the next point.

21 / 37
[Link] For example, we want to see which instances are relevant for one particular message, for
example, for mapping tasks
[Link] I go to the migration project view and I select the migration object product
[Link] and I click Messages. Okay, for the message that mapping tasks are not yet confirmed,
[Link] I see there are two instances affected. I click this message
[Link] and I can see the key fields for the instances. So the key fields, MIG_008 and MIG_009.
[Link] I can also extract this information to the Excel file. Okay, that was the second option.
[Link] Okay, now, for example, I would like to check one instance. For example, I would like to
check messages for instance MIG_008.
[Link] I go to the project view and click number 2 in the simulation. I see there are two instances
[Link] and I choose the particular instance and click the error in the instance MIG_008.
[Link] and now I see all the messages related to this particular instance.
[Link] I can also extract this information to the Excel file. The fourth possibility to check the
messages,
[Link] for example I'm the project manager and want to see the errors that occurred
[Link] for the first simulation run. So I click the object name, Product.
[Link] I would like to check the messages for the simulation run for the particular object.
[Link] So I click the product, and I go to the History tab
[Link] and see the Show Messages button under the simulation run. So in the History tab of the
product migration object,
[Link] I see the history for the object from the object being added to the project,
[Link] so, prepare migration object. Then I see the data was validated,
[Link] transferred to the staging tables, and then I see the first simulation run.
[Link] So I click Show Messages and I go to the errors.
[Link] And I see all the errors again that happened for this particular simulation run.
[Link] Okay, that was it for the demo, for the error handling. I go back to the slides.
[Link] Now it's time to go to the next topic, correction file. After the migration, there is the
possibility
[Link] to generate a correction file. Before it was called data file.
[Link] What is a correction file? It is the file that contains all the instances
[Link] that have errors. You download this correction file
[Link] and you have the chance to edit these instances instead of checking them in the migration
cockpit
[Link] and checking which instances have errors and then creating them from scratch in the
template.
[Link] So you just download the correction file, you add in the data and upload it back to the
migration cockpit
[Link] and go through all the steps of the migration process. Please pay attention that this option is
available
[Link] only after the migration, not after the simulation. So when your migration completed with
errors.
[Link] Let's go to the next topic, handling duplicate key errors.
[Link] It may happen that you upload the file to the migration cockpit that contains duplicates. For
example, the instances that are already in the staging tables.
[Link] In this case, you will get a status, the transfer of data to staging tables failed.
[Link] It means that your staging tables will not be filled with the data,
[Link] but you still can handle the transfer of the data. You have to choose, so what can you do?
[Link] You have uploaded a lot of files, and some of the files have duplicates,

22 / 37
[Link] so you can choose Skip Files with Duplicates, or you can replace duplicates with instances
from the file.
[Link] You can check more information about handling duplicate key errors in our help portal.
[Link] Key takeaways. In this unit, we have learned
[Link] how to migrate business partners. We have seen the different ways to check error
messages,
[Link] and also the demo. We have understood what the correction file is
[Link] and when you can't unload it. And we have seen the option to handle duplicate key errors.
[Link] I hope you enjoyed this unit. In the next unit, we will see the best practices
[Link] and challenges during the migration process.

23 / 37
Unit 6

[Link] Hello and welcome to unit six, Best Practices and Challenges.
[Link] In this unit I would like to share with you some best practices on how to set up your project.

[Link] I will give some information about the data migration performance.
[Link] Also, we will check the mass change or what you can do after you have used migration
cockpit
[Link] and after you migrated your data. We will get more information
[Link] about the migration objects and check the mapping download/upload functionality.
[Link] First of all, how to set up your project. We recommend to use one project
[Link] for many or several migration objects. The reason for that is that there are many mapping
values
[Link] that are cross-project, and if you maintain a particular mapping value for one object,
[Link] it will be also used for another object within the same project and you can have better
control of the migration.
[Link] You see the overview, the status of your migration objects. If you use several migration
projects,
[Link] this is your responsibility to keep mapping in sync between projects, and of course, it's
additional effort and time.
[Link] If you use the internal numbering for a migration object, you can only upload this mapping
after it has been created.
[Link] As a fact, distributing migration objects across different projects doesn't improve the
performance.
[Link] You can find more information in the KBA provided on the slide about the performance,
[Link] but we also talk about it in the next slide. How to enhance the data migration performance.
[Link] We recommend not to start migration of all objects in parallel because there are some
dependencies on the migration objects.
[Link] There is a specific sequence that you need to follow. Parallelization is meant for migration
objects
[Link] with high data volumes. Please prevent many people working in parallel
[Link] on the different migration projects, and by this avoid multiple activities for several projects
[Link] in the same data migration context. Consider that uploading multiple objects
[Link] can make the performance worse and flood the job queue, even if you use job
management.
[Link] In our experience, it's better to migrate one object with the full number of jobs, complete
data migration,
[Link] and start the migration of the next object. Of course, it is recommended to execute the data
migration
[Link] when the system has a low workload. You can find a lot of information in the KBAs.
[Link] One is about the parallelization and improving the performance, and the second KBA
contains a lot of sources
[Link] for the specific performance problems System types.
[Link] With the following slide, I wanted to emphasize that for the migration cockpit
[Link] in SAP S/4HANA Cloud there is no transport functionality available.
[Link] It means for the different systems the process of data migration is the same.
[Link] You need to create, recreate the project, fill the staging tables,
[Link] process the mapping tasks, simulate, migrate, and validate the migrated data.

24 / 37
[Link] The migrated data cannot be deleted for the production system. Regarding planning your
project go-live,
[Link] SAP S/4HANA Cloud upgrade and maintenance schedule is available. Please check the
upgrade before migration to a production system.
[Link] The migration cockpit is available only in read-only mode during the upgrade,
[Link] and if you migrate your data during maintenance schedules or upgrades, for example
started to migrate it shortly before the upgrade,
[Link] you will get some inconsistencies or errors, for example, wrong number of staging tables
and so on.
[Link] So please plan to do the migration out of upgrade windows. You can check the schedule in
the following slides.
[Link] What about the mass change? We often get this question about the mass change,
[Link] if I'm allowed, for example, to change the data after the migration. As you have already
seen,
[Link] the scope of the migration cockpit is the initial data upload. It is also because the APIs used
with migration cockpit
[Link] are the APIs to create data, and the update of existing data is not possible.
[Link] But there are some mass change apps available for some migration objects
[Link] that you can use after the initial data migration. Our recommendation is to check these apps
in the Help Portal.
[Link] In the migration object list, there is a general search. You can type in "mass maintenance"

[Link] and you will find the list of the objects for which the mass change is available.
[Link] As you can see on the screen, there are 20 results or 20 migration objects,
[Link] so you can open each of these results and check exactly what is the name of the mass
change app.
[Link] For example, for customer and for product migration objects, these apps are available and
you can check authorization
[Link] and the name of the app in the Help Portal documentation. What is also worth mentioning -
[Link] migration object updates. With the SAP S/4HANA Cloud update,
[Link] the migration content is also being updated. The migration objects are always up to date.
[Link] They are permanently adapted and therefore the templates used in one previous release
[Link] might not be anymore used for the actual release. For example, in the higher release,
[Link] there may be changes in key mandatory fields or structure changes,
[Link] and you can check the change overview for the particular release to be on the safe side.
[Link] The link is provided on the slides. It leads you to the release comparison.
[Link] There is a comparison between the releases, and also if you're interested in the particular
object,
[Link] there is also a detailed object view. You can choose the object, for example Bank,
[Link] and see what was changed in the particular release. There is more information about the
migration objects
[Link] available in the Help Portal. If you have already worked in migration cockpit
[Link] in SAP S/4HANA Cloud, you may notice that, from time to time,
[Link] the updates of the migration objects are needed. If a migration object update is required,
[Link] you will get a pop-up message when you perform any action from the action list,
[Link] for example, download template, simulate, migrate, and so on. As described in the
message,
[Link] go to the migration object screen and start the update there.
[Link] We recommend to use the latest migration object templates to avoid any inconsistencies

25 / 37
[Link] because the content is always updated and the templates from the previous release may
not correspond
[Link] to the updated migration object structure. There is another way to check for the updates
[Link] without triggering any action. You can open the migration object view
[Link] and click Check for Updates, and then you can see if the object needs updates or not.
[Link] Okay, regarding the object dependencies, when you create the project and you add any
object,
[Link] you will get a message that the predecessor object exists if it exists for the object,
[Link] and you will be proposed to add this object in the migration project.
[Link] You can click Add and then you always can check them in the settings.
[Link] You will see them in the settings only if you added the migration objects to the project.
[Link] You click the migration object name, as you see on the bottom screenshot,
[Link] and then you need to select the Dependencies tab and then you can see the list of the
dependencies.
[Link] Alternatively, you can check the documentation for every migration object,
[Link] information about the predecessors, which migration objects should be migrated before,
[Link] and so on. For example, for the product,
[Link] the information also is in the Help Portal in the documentation. The last-but-not-least best
practices of very useful functionality.
[Link] Mapping, download upload. We know that maybe some of you
[Link] would like to maintain the mapping tasks out of migration cockpit, mapping values,
[Link] and you would like to prepare them in the Excel files. Therefore, there is a functionality
available
[Link] to download and upload mapping tasks, mapping values. usually you can of course also edit
them
[Link] in the migration object directly, but for a big amount of data
[Link] it's maybe practical to download the values. In this case,
[Link] you will get the values generated automatically one-to-one. You can edit them, then you can
upload them to the system,
[Link] to the migration cockpit, and by the upload, which is also very practical,
[Link] you can confirm them automatically. It means that you do not need to select them
[Link] in the migration cockpit additionally and maintain them by upload.
[Link] Or you can also replace existing mapping tasks by the mapping files upload.
[Link] You can also download mapping templates. The source target values will be empty in this
case,
[Link] and you'll find more information in the blog "Maintaining the mapping values".
[Link] In this unit, you have learned how to set up your project, how to enhance data migration
performance,
[Link] possibility to change the data after migration. You got some information
[Link] about the migration objects and how to update them, where to find the migration object
dependencies.
[Link] I also showed you then the mapping download/upload functionality. I hope you enjoyed the
unit.
[Link] In the next unit, we will see the additional or related apps in the data migration process.

26 / 37
27 / 37
Unit 7

[Link] Hello and welcome to unit seven, Related Apps in the Data Migration Process.
[Link] In this unit, I will give you an overview on the additional apps, such as Data Migration Status
app
[Link] and Define Settings for Legacy Data Transfer app. At the end, I will let you know what
situation handling is
[Link] in the context of data migration, so this is about notification.
[Link] There are two apps that can help you in data migration tasks. The first app is called Data
Migration Status app.
[Link] With this app, you can check the status of your migration project and objects for which you
have started simulation or data migration.
[Link] The second app is called Define Settings for Legacy Data Transfer. So when you transfer
balances
[Link] and open postings from the legacy system to your SAP S/4HANA Cloud system,
[Link] you need to define the posting key data. You can do it with this app,
[Link] before even starting working with migration cockpit. In short, you use this app
[Link] to define the key date for data transfer of financial objects for each company code.
[Link] You find these two apps under data migration topic. You do not need to assign any
additional business roles.
[Link] It is the same as for migration cockpit in SAP S/4HANA Cloud,
SAP_BR_CONFIG_EXPERT_DATA.
[Link] Firstly, let's check the Data Migration Status app. When you open the Data Migration app,
[Link] you see the overview of the migration objects with different records
[Link] and statuses, as is shown on the right screenshot. This is a reflection of what is happening

[Link] in your migration cockpit. In the screenshot, you can see that,
[Link] for example, for 13 objects, the simulation and migration process was started.
[Link] This can be for one project, it can be for different projects,
[Link] but in total you have 13 objects for which there is a simulation
[Link] or migration completed with a certain status. The are successful records, you can see them
in green.
[Link] And there are records with arrows, you can see them in red. With the Data Migration Status
app
[Link] you can get an overview of your migration objects in real time. You can use filters and
change view settings,
[Link] depending on the records you want to get. You can see the detailed statuses for all the
records,
[Link] get the information on all the messages appeared during simulation or migration,
[Link] and export records to the Excel files. For more information, check our help portal and KBA
[Link] for the Data Migration Status app. Actually, there are many more features
[Link] and there is much more that you can get with the app. You can not only drill down to every
error message
[Link] and export these reports to the migration, to the Microsoft Excel files,
[Link] you can also navigate to the respective SAP Fiori app, which is quite practical.
[Link] For example, after you perform the data migration you can go to the Status app,
[Link] see the status of the records, and navigate to the respective apps
[Link] with the link to check the posted data. You can get the notification

28 / 37
[Link] about the data migration simulation completion. And you have the functionality to perform
the audit.
[Link] The user can set the dependent status, meaning that the data records will be still validated,

[Link] or approved or rejected status. You have extended statistics,


[Link] and we will talk about it later in the presentation. When you open the Data Migration Status
app,
[Link] you will see all the records for all the projects. And first, what you can do,
[Link] you can filter the records by migration period, migration project, object name, or record
status.
[Link] Some information about the records status. There are three types of status.
[Link] Green status means that the instances were migrated or imported successfully. Red is the
failed status.
[Link] That means that either simulation or migration was not successful. You have errors and
need to check the instances.
[Link] And gray status means that the records are ready for import. The simulation was successful

[Link] and these instances are ready to be migrated. You find more information in the application
help.
[Link] In the extended statistics, you can see the instance details,
[Link] such as source values, target values after mapping, and target IDs.
[Link] You need this information to validate your data. When you click the statistics link,
[Link] you can get a separate small window where you can select the fields of the structure
[Link] that you want to see in your expert statistics. This means that what you can see
[Link] in the extended statistics is adjustable. In this pop-up window,
[Link] you also see the fields under the structures. You select the particular field and go to the
details
[Link] or to the instance level statistics. For example, you click the product group
[Link] or product type that you see on the second screenshot, and you will be redirected to the
information
[Link] where you can check how many records were imported, if there are any failed records,
[Link] and in the overall, you see the progress for this particular field. Also, you see the products to
this particular category
[Link] to each product group or product type In the defined settings for legacy data transfer,
[Link] you can define a migration key date for each company code, and you can specify the legacy
data transfer status
[Link] for the specific company code. There are three statuses that you see on the screenshot.
[Link] In preparation status means that the key date is not yet defined.
[Link] No transactional data can be migrated. The ongoing status means that you are ready to
migrate data,
[Link] the key data is specified. And the completed status
[Link] means that the data migration is finished. Another migration of transaction data,
[Link] in this case, for these company codes is not possible. The date that you set is usually the
end of a period,
[Link] so month, quarter, year, since this will fit into the normal reconciliation cycle.
[Link] The last topic in this unit is situation handling. It's interesting to know that when you have
your simulation of migration completed,
[Link] you will get a notification in your system that the data migration results are available.
[Link] And if you follow the message you will be redirected to the Data Migration Status app.

29 / 37
[Link] This is pre-activated. You can see the situation handling template name on the screen.
[Link] And you can switch off this notification if needed. In this unit we have learned the additional
apps
[Link] that can help you in data migration process. We have seen the capabilities of data migration
status
[Link] and defined settings for Legacy Data Transfer apps. And we have seen that the notification
is activated via situation handling.
[Link] I hope this unit was helpful and that you learned something new, and we will see each other
in the next unit,
[Link] Options for Supporting Additional Requirements.

30 / 37
Unit 8

[Link] Hello and welcome to unit eight, Options for Supporting Additional Requirements.
[Link] In this unit, I will give you an overview on the remote database connection.
[Link] We will talk about extensibility or custom fields in the migration objects.
[Link] We will see some information on the modeling environment or migration object modeler
app.
[Link] And at the end, I will let you know where you can put your requests
[Link] or show you our customer influence session. Okay. Remote SAP HANA database
connection.
[Link] When you create the project, you see that you can select local or remote database schema.

[Link] When do you opt for the remote database? The answer is when you want to fill the staging
tables
[Link] with your preferred ETL tools. In this case, the system generates staging tables
[Link] in a remote SAP HANA database schema, and the tables will be read from there.
[Link] There is a particular setup that you need to follow. First of all, you need to perform the
settings for BTP,
[Link] for example, create SAP HANA Cloud instance and create communication user with specific
roles.
[Link] You also need to establish the connection via communication scenario.
[Link] You will find the instructions in the scope item 2Q2. Before we had, as you know, best
practices,
[Link] now we have process navigator, where you can access the documents
[Link] for the communication arrangement, in case you want to use the remote database schema.

[Link] You will see the link to the scope item in the next slide. The process with the remote
database connection
[Link] is as follows: You select the remote SAP HANA database schema
[Link] for your migration project, and the staging tables
[Link] for your migration objects are created in there, in the remote database schema.
[Link] You extract the data from the ERP system or from any other system
[Link] and write the data directly to the staging tables in SAP BTP
[Link] using your preferred tools. The communication scenario, SAP_COM_0678,
[Link] establishes the database connection using SAP HANA database instance
[Link] on an SAP S/4HANA Cloud instance in SAP BTP. Migration cockpit reads the data from the
staging tables,
[Link] and the data is being updated via API. The local and remote database connections
[Link] refer to different use cases. Normally, you use the local database schema
[Link] if you fill the staging tables with XML or CSV template files.
[Link] This is a standard use case. You use the remote SAP HANA database schema
[Link] in a specific situation when you're using third-party ETL tools
[Link] to extract a big amount of data, and it is easy for you then
[Link] to fill the staging tables directly with your preferred tools.
[Link] That was it about the database schemas. And now, we will proceed with the extensibility
[Link] in the next slide. What visibility do you have in terms of extensibility?
[Link] As a business user, you can create additional fields using the Custom Fields app.

31 / 37
[Link] For example, you want to add additional field product-related bonus to the product master
data.
[Link] We have a video about it, you can check it after this unit. The migration cockpit supports the
custom fields
[Link] for some migration objects. We will see in the next slide
[Link] how you can find these objects. And if the custom fields are supported,
[Link] they will be automatically reflected in the template of the migration object.
[Link] So the process is you add the custom fields to a business object via an extensibility
[Link] using Custom Fields app, and then these fields should be added to the template.
[Link] After you have worked in Custom Fields app, you go to the migration cockpit.
[Link] And when you try to download the template, you will get a notification
[Link] saying that the custom fields need to be checked, and you just follow what is written in this
notification.
[Link] Go to the object screen and click Check for Custom Fields button.
[Link] When the update of the custom field is completed, you can download your template with the
custom fields.
[Link] The process in the migration cockpit is quite intuitive and you will see it in the next slides.
[Link] So how you can check the list of the migration objects that support the custom fields.
[Link] You go to our famous list of the migration objects. In there, you see different columns,
[Link] and one of the columns is called Custom Field Support. You can choose Yes and see the
list of the objects.
[Link] There are around 36 migration objects that support custom fields.
[Link] This is how the button Check for Custom Fields looks in the migration cockpit.
[Link] As I said, you get a notification by downloading the template but you can do it also without
any notification.
[Link] So you edit it, for example, the custom fields to a business object in Custom Fields app.
[Link] You go to the migration cockpit to the specific object and choose Check for Custom Fields
button.
[Link] When the update of the template is finished, you will see it in the History tab.
[Link] The action will be called Update Custom Fields Completed. When you see this action in the
History tab,
[Link] you can go back to the migration cockpit and download the template with the custom fields.

[Link] Now it's time to talk about the modeler environment, migration object modeler app.
[Link] For now, the app is very limited, but it's been improved. You can enhance the migration
object with this app,
[Link] for example, Customer, Supplier, Product. You will get the actual information
[Link] on which fields and objects areas are available to be edited in the SAP note that you see on
the slide.
[Link] And to use this app, you need to assign the role SAP_BR_ADMINISTRATOR.
[Link] You'll get instructions on how to use this app in the step-by-step guide in KBA 3216716.
[Link] If you would like to have more fields in the particular object, you can create a request.
[Link] Please follow the procedure in the KBA 2676589. There are also separate SAP notes
[Link] for each of the migration objects that can be enhanced. You see the screenshot of the SAP
note for the supplier.
[Link] Each of these notes provides you with the list of the fields that you add to the migration
object,
[Link] to the template, with the help of the migration object modeler.

32 / 37
[Link] The app looks the following way. As you can see,
[Link] you just go to the source structures of the object and add the additional fields at the end of
the list.
[Link] You choose the data type, length of the field. You give it a name and save your editings.
[Link] Then you can proceed with the enhanced migration object. Last but not least for this unit,
[Link] where you can submit your ideas regarding the migration cockpit.
[Link] We have a customer influence session named SAP S/4HANA Cloud for data management
[Link] and data migration public edition. In here, you can create a request
[Link] for the new functionality that should be included in the migration cockpit, or the new
migration object,
[Link] or the new field in the particular migration object. Please describe your requests as detailed
as possible.
[Link] You can also see the requests of other users. This is a platform where you can have an
overview
[Link] of what is requested, and we really appreciate
[Link] if you can vote for the requests that you find important. The thing is that we prioritize them,
[Link] and the threshold for the session is four votes, and sometimes we even don't reach the
threshold.
[Link] This is important for us to push the requests and choose it, implement it,
[Link] especially when the development is limited in their capacity.
[Link] In this unit, we have learned the different options for database connection.
[Link] You have seen that some migration objects have custom fields.
[Link] We have checked what is the migration object modeler. And now you know what to do
[Link] if you have further requests regarding the migration cockpit.
[Link] I hope you had a good time and were not overloaded with the information.
[Link] I hand over to my colleague, Claudia. In the next unit,
[Link] she will give you a summary of what we have learned during this course.

33 / 37
Unit 9

[Link] A very warm welcome to our closing session, unit nine of our openSAP course,
[Link] Migrating Data to SAP S/4HANA Cloud, Public Edition. My name is Claudia Gemm,
[Link] and I will summarize our learnings and give an outlook for the SAP S/4HANA migration
cockpit.
[Link] Last time, let's have a look at today's agenda. I will give you an outlook on our new
migration approach
[Link] in the migration cockpit. We will have a recap of the migration process
[Link] and the different steps. Having a checklist to start with a data migration
[Link] is always a good idea. I will present some important points for this checklist.
[Link] Last but not least, there are further resources to share where you can get information to
support you
[Link] on your way to SAP S/4HANA Cloud, public edition. Next to the migration approach using
staging tables,
[Link] we have another approach called migrate data directly from SAP system.
[Link] You have shortly seen this in our demo when we created the new migration project.
[Link] This approach is now newly introduced to SAP S/4HANA Cloud, public edition.
[Link] How does this work? To connect your SAP ERP source system,
[Link] you use a communication arrangement. With this, your business data can be fetched
[Link] automatically from the source system. This means the migration cockpit
[Link] takes over the task of collecting the source data, based on a defined selection criteria, the
company code.
[Link] Since release 2302, this new approach runs under the Early Adopter Care program.
[Link] We have a registration page online and an SAP Note available,
[Link] where interested partners and customers can check the preconditions and assign to the
program.
[Link] We are looking for customers in the realize phase for migrating an SAP ERP system or
partners for their own tests.
[Link] This is a recap of our migration process covered especially the first units of this course.
[Link] Starting with the definition of the migration scope, you select the migration objects you need

[Link] for your migration project. Do the scoping as early as possible


[Link] to check any dependencies to other objects or to check if a data transformation is needed.
[Link] To get the data in, download the template files, fill and upload them into the staging tables.
[Link] Using another ETL tool is also a possible way. Having the data in the staging tables,
[Link] it's time to work on the mapping. Even if you do not want to transform data,
[Link] you have to confirm the setting of each single mapping task. Also, here you have the
chance to download them and enrich them offline,
[Link] which is usually done in the different business units. You have everything in place?
[Link] Then it's time to simulate. The API used for migration checks if all settings are done,
[Link] all mandatory fields filled. In case of errors, check them in the monitoring and correct them.

[Link] If everything is green, do the migration. Execute your migration


[Link] and check the outcome in the result list and use the possibility to display
[Link] the created items in the corresponding application app. SAP S/4HANA migration cockpit

34 / 37
[Link] used to facilitate your business data migration These are the consolidated key capabilities.

[Link] It is a tool of choice in a new implementation area. And for the public cloud,
[Link] it is the only tool to load data in. It is ready to use, included in the license
[Link] with a big bunch of preconfigured migration objects. With the integration in the SAP Activate
methodology,
[Link] we can provide best practices with test cases and accelerators supporting our customers.
[Link] Working with the migration cockpit means running a guided and safe migration.
[Link] The user is guided but has their own flexibility in executing the steps.
[Link] And in the end, we have, even in the cloud environment, the ability to use custom field
support for existing migration objects.
[Link] And for some restricted objects, the migration object modeler can be used for adjustments.

[Link] As promised, I will show you a checklist for data migration projects in a nutshell.
[Link] You see a lot of questions to be answered. Please use and analyze them
[Link] to have a structured preparation for your data migration. Get an overview of your source
data,
[Link] understand your required processes, and check all dependencies.
[Link] Prioritize and focus on the business-critical data. Simplify the migration tasks as much as
possible
[Link] to reduce the workloads of any involved unit. And finally, align your tasks.
[Link] Use a project and cutover plan. This would also help you to prepare and execute your
migration tests.
[Link] There is more information to consume. Besides our landing page on SAP Help,
[Link] we provide an SAP Community Topic Page where you can find FAQs, write you own blogs,

[Link] or ask questions to the worldwide community. To join our community, use the section SAP
Community
[Link] on our landing page. Also worth mentioning is the first version of our cookbook,
[Link] which is now available. Here we cover a lot of additional separate topics
[Link] that come along while working with the migration cockpit. You can find it on our landing
page in section
[Link] Training and Education. These are some important links bundled on one slide.
[Link] I want to highlight the third row, our migration template samples.
[Link] Here we provide sample-data-filled XML templates. These template samples help you
[Link] in filling out the data migration templates of various data migration objects
[Link] available in the SAP S/4HANA migration cockpit. Nevertheless, we recommend using all the
information,
[Link] which is in part very detailed. All the materials will continuously be updated
[Link] with new features, functions, and other news. Be part of the community.
[Link] We from product management are not getting tired of explaining how important the data
migration is.
[Link] It is one key task during the transition to SAP S/4HANA. Unfortunately, it's often
underestimated.
[Link] It's not done just by pressing a button. Make sure to understand
[Link] your data migration requirements early and plan for them accordingly.
[Link] Now we are at the end of our openSAP course. In this last unit, we gave you an outlook
[Link] on the new approach migrating data directly from an SAP system,

35 / 37
[Link] which is currently running the Early Adopter Care program. We had a repeat on the overall
migration process
[Link] and a summary of the SAP S/4HANA migration cockpit. Having all resources to find further
information,
[Link] you are now able to run the course assignment. We hope you enjoyed this course.
[Link] On behalf of the whole migration cockpit product management team,
[Link] many thanks for your attention and participation. We wish you all the best and good luck
[Link] for this course assignment.

36 / 37
© 2023 SAP SE or an SAP affiliate company. All rights reserved.
See Legal Notice on [Link]/legal-notice for use terms,
disclaimers, disclosures, or restrictions related to SAP Materials
for general audiences.

You might also like