| Status | Approved |
|---|---|
| Owner | |
| Stakeholders | CIRULE, Anita |
Purpose
The purpose of this document is to define the data conversion approach to create Cross Selling records in S/4 HANA.
Cross selling is a sales technique where a customer is offered related or complementary products to what they have already purchased or are purchasing. The system can automatically suggest these items during sales order creation, potentially increasing sales volume and customer satisfaction.
The structure and usage of Cross Selling in S/4HANA remain consistent as the records in ECC are maintained at sales organization level.
This conversion aims to migrate active and relevant cross selling records from existing ECC systems into S/4HANA by applying required transformation logic using Syniti as the data migration and transformation platform. The converted records will be loaded into the target S/4HANA system using standard SAP mechanisms such as IDOCs, BAPIs, or direct table loads where applicable.
Conversion Scope
The scope of this document covers the approach for converting active Cross Selling from Legacy Source Systems into S/4HANA following the Cross Selling Master Data Design Standard: DD-FUN-050 Master Data Standard_1037-Cross selling.
From the current system landscape, Cross Selling records only exist in the legacy systems - WP2. Harmonization and validation are required to ensure accurate and consolidated data in S/4HANA. While WP2 serve as source systems, a mapping and transformation logic will be necessary to produce properly formatted load templates in line with the target design.
The data from legacy system includes:
- All active Cross Selling, where "valid to date is beyond S/4HANA Go-Live date" AND each of the below as per table combination:
- Sales organization in scope of S/4HANA
- Material sales view migrated as per CNV-2003 Materials - Sales view with sales long text.
The data from legacy system excludes:
Invalid Cross Selling, e.g. table KOTD904 (sales organization/ distribution channel/ customer) and KOTD905 (sales organization/ distribution channel)
| Source | Scope | Source Approx No. of Records | Target System | Target Approx No. of Records |
|---|---|---|---|---|
| WP2 | Cross Selling table: KOTD906, KONDD, KONDDP | 150 | S/4HANA ROW | 150 |
| WP2 | Cross Selling table: KOTD906, KONDD, KONDDP | 75 | S/4HANA China | 75 |
| WP2 | Cross Selling table: KOTD906, KONDD, KONDDP | 150 | S/4HANA CUI | 150 |
| PF2 | Cross Selling | N/A | S/4HANA ROW/ China/ CUI | N/A |
Additional Information
Multi-language Requirement
N/A
Document Management
N/A
Legal Requirement
N/A
Special Requirements
Due to compliance requirement, there will be one SAP instance for Rest of the World (ROW), one for China and one for CUI. Based on the sales organization the cross selling records will be migrated to respective SAP instances.
Target Design
The technical design of the target for this conversion approach.
| Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|---|
| KOTD906 | KSCHL | KSCHD | Material determination type | CHAR | 4 | Mandatory |
| KOTD906 | VKORG | VKORG | Sales Organization | CHAR | 4 | Mandatory |
| KOTD906 | DATBI | KODATBI | Validity end date of the condition record | DATS | 8 | Mandatory |
| KOTD906 | DATAB | KODATAB | Validity start date of the condition record | DATS | 8 | Mandatory |
| KONDD | SMATN | SMATN | Substitute material This is for Main/ sales material | CHAR | 18 | Mandatory |
| KONDD | MEINS | SUBME | Substitute unit of measure | UNIT | 3 | Mandatory |
| KONDD | LSTACS | LSTACS | Cross-selling delivery control | CHAR | 1 | Optional |
| KONDDP | KPOSN | CNUM3 | Seq. number | CHAR | 3 | Mandatory |
| KONDDP | SMATN | SMATN | Substitute material This is for Cross-selling material | CHAR | 18 | Mandatory |
| KONDDP | MEINS | SUBME | Substitute unit of measure | UNIT | 3 | Mandatory |
| KONDDP | LSTACS | LSTACS | Cross-selling delivery control | CHAR | 1 | Optional |
Data Cleansing
All data cleansing should take place in the data source system as defined in this document, unless system limitations prevent it.
| ID | Criticality | Error Message/Report Description | Rule | Output | Source System |
|---|---|---|---|---|---|
| 1037-001 | C1 | Material with flag for deletion | Flag for deletion at client level (MARA-LVORM) OR flag for deletion at distribution chain level (MVKE-LVORM) is 'X' - Yes | Material No./ Material Description/ Sales Organization/ Sales Organization Name/ Distribution Channel/ Distribution Channel Name/ Flag for deletion at client level/ Flag for deletion at distribution chain level/ Tag - Main or Substitute Material | WP2 |
| 1037-001 | C1 | Material with distribution-chain material status | Cross-distribution-chain material status (MARA-MSTAV) OR Distribution-chain-specific material status (MVKE-VMSTA) is NOT BLANK | Material No./ Material Description/ Sales Organization/ Sales Organization Name/ Distribution Channel/ Distribution Channel Name/ Cross-distribution-chain material status code and the description/ Distribution-chain-specific material status code and the description/ Tag - Main or Substitute Material | WP2 |
How to clean: Main/ sales material - Data cleanser to change the valid to date to before S/4HANA go-live, Cross-selling material - Data cleanser to delete the cross-selling material.
Conversion Process
The high-level process is represented by the diagram below:
The ETL (Extract, Transform, Load) process is a structured approach to data migration and management, ensuring high-quality data is seamlessly transferred across systems. Here’s a breakdown of its key components:
1. Extraction
The process begins with extracting metadata and raw data from source systems, i.e. Syensqo ECC system WP2. The extracted data is then staged for transformation.
2. Transformation
Once extracted, the data undergoes cleansing, consolidation, and governance. This step ensures data integrity, consistency, and compliance with business rules. The transformation process includes:
- Data validation to remove inconsistencies.
- Standardization to align formats across datasets.
- Business rule application to refine data for operational use.
3. Loading
The transformed data is then loaded into the target S/4HANA system.
Data Privacy and Sensitivity
N/AExtraction
Extract data from a SAP ECC WP2 into Syniti Migrate for S/4HANA. Syniti Migrate connects to the source and loads the data into Syniti Migrate. There are 2 possibilities:
- The data exists. Syniti Migrate connects to the source and loads the data into Syniti Migrate. There are 3 methods:
- Perform full data extraction from relevant tables in the source system(s).
- Perform extraction through the application layer.
- Only if; Syniti Migrate cannot connect to the source, data is loaded to the repository from the provided source system extract/ report.
- The data does not exist (or cannot be converted from its current state). The data is manually collected by the business directly in Syniti Migrate. This is to be conducted using DCT (Data Collection Template) in Syniti Migrate.
The agreed Relevancy criteria is applied to the extracted records to identify the records that are applicable for the Target loads
Extraction Run Sheet
| Req # | Requirement Description | Team Responsible |
|---|---|---|
| 1037-001 | - Identify the source systems (WP2) and databases involved. - Define the data objects (tables such as KOTD906, KONDD, KONDDP, fields, records) to be extracted. - Establish business rules for data selection. | Syniti / LTC Data team |
| 1037-002 | - Specify the extraction approach (full, incremental, or delta extraction). - Determine the tools and technologies used. - Define data filtering criteria to exclude irrelevant records. | Syniti |
| 1037-003 | - Establish execution timelines and batch processing schedules. - Assign responsibilities for extraction monitoring. - Document dependencies on other migration tasks. | Syniti |
| 1037-004 | - Define error handling mechanisms for extraction failures. | Syniti |
Selection Screen
| Selection Ref Screen | Parameter Name | Selection Type | Requirement | Value to be entered/set |
|---|---|---|---|---|
| Valid To Date | Single | Select Data that are valid from this (Valid to) date | Date | |
| Sales Organization | Multiple | Valid Sales organization for extraction | In-Scope Sales Organizations | |
Data Collection Template (DCT)
Target Ready Data Collection Template will be created for data with exception of some fields which require transformation as mentioned in the transformation rule.DCT Rules
| Field Name | Field Description | Rule |
|---|---|---|
| N/A | ||
Extraction Dependencies
| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Source System Availability
| Syensqo IT |
| 2 | Data Structure
| Syniti |
| 3 | Referential Integrity
| Syniti |
| 4 | Extraction Methodology
| Syniti |
| 5 | Performance and Scalability Considerations
| Syniti |
| 6 | Security and Compliance
| Syniti |
Transformation
The Target fields are mapped to the applicable Legacy field that will be its source, this is a 3-way activity involving the Business, Functional team and Data team. This identifies the transformation activity required to allow Syniti Migrate to make the data Target ready:
- Perform value mapping and data transformation rules.
- Legacy values are mapped to the to-be values (this could include a default value)
- Values are transformed according to the rules defined in Syniti Migrate
- Prepare target-ready data in the structure and format that is required for loading via prescribed Load Tool. This step also produces the load data ready for business to perform Pre-load Data Validation
Transformation Run Sheet
| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Identify target S/4HANA fields and determine applicable legacy source fields from ECC system (WP2) | Functional Team (L2C) + Data Team (L2C) |
| 2 | Map legacy field values to S/4HANA target values (including field-level mapping and technical names) | Data Team (L2C), Data Team (Syniti) |
| 3 | Define value mapping rules for fields requiring standardization or harmonization across the source systems | Functional Team (L2C) + Data Team (L2C) |
| 4 | Identify and agree on default values where legacy data is incomplete or inconsistent | Business Team + Functional Team (L2C) |
| 5 | Configure transformation rules in Syniti Migrate | Data Team (Syniti), Data Team (L2C) |
| 6 | Review transformation logic and mappings with Business for confirmation | Business Team + Functional Team (L2C) |
| 7 | Perform initial transformation run and generate draft target-ready dataset | Data Team (Syniti) |
| 8 | Review draft target-ready data for structure and completeness | Data Team (L2C), Functional Team (L2C) |
| 9 | Share transformed data with Business for Pre-load Validation | Business Team |
| 10 | Incorporate feedback from Business and refine mappings or transformation logic as needed | Data Team (L2C) |
| 11 | Finalize and approve transformed data as Target Ready Load File | Business + Functional (L2C) + Data Team (L2C) |
| 12 | Handover final file to Load Team or trigger the load via Syniti Load Workbench | Data Team (Syniti), Data Load Team |
Transformation Rules
| Rule # | Source system | Source Table | Source Field | Source Description | Target System | Target Table | Target Field | Target Description | Mapping Table | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|---|
| Cross Selling Condition Records | ||||||||||
Data Extraction Logic for Cross Selling Conditions 1. Identify Relevant Condition Types 2. Process by Source System 3. Extract Condition Records Number 4. Extract the Main Material (Sales Material) 5. Extract the Cross Selling Material | ||||||||||
| 1037-001 | WP2 | KOTD906 | KSCHL | Material determination type | S/4HANA | KOTD906 | KSCHL | Material determination type | Copy Material determination type | |
| 1037-002 | WP2 | KOTD906 | VKORG | Sales Organization | S/4HANA | KOTD906 | VKORG | Sales Organization | MAP_VKORG | Map sales organization from Source to Target using Mapping table defined here. |
| 1037-003 | WP2 | KOTD906 | DATBI | Validity end date of the condition record | S/4HANA | KOTD906 | DATBI | Validity end date of the condition record | Copy valid to date | |
| 1037-004 | WP2 | KOTD906 | DATAB | Validity start date of the condition record | S/4HANA | KOTD906 | DATAB | Validity start date of the condition record | Copy valid from date | |
| 1037-005 | WP2 | KOTD906 | KNUMH | Condition record number | S/4HANA | KOTD906 | KNUMH | Condition record number | Temporary number of target condition record. The record will be renumbered in the S/4HANA system. This condition records number are required to link the 3 tables: KOTD906, KONDD, KONDDP. | |
| 1037-006 | WP2 | KONDD | KNUMH | Condition record number | S/4HANA | KONDD | KNUMH | Condition record number | Temporary number of target condition record. The record will be renumbered in the S/4HANA system. This condition records number are required to link the 3 tables: KOTD906, KONDD, KONDDP. | |
| 1037-007 | WP2 | KONDD | SMATN | Main Material/ Sales Material | S/4HANA | KONDD | SMATN | Substitute material | MAP_MATNR | Map material no. from Source to Target using Mapping table defined here. |
| 1037-008 | WP2 | KONDD | MEINS | Main/ sales material unit of measure | S/4HANA | KONDD | MEINS | Substitute unit of measure | MAP_MEINS | Map unit of measure from Source to Target using Mapping table defined here. |
| 1037-009 | WP2 | KONDD | LSTACS | Main/ sales material delivery control | S/4HANA | KONDD | LSTACS | Cross-selling delivery control | Copy cross-selling delivery control | |
| 1037-010 | WP2 | KONDDP | KNUMH | Condition record number | S/4HANA | KONDDP | KNUMH | Condition record number | Temporary number of target condition record. The record will be renumbered in the S/4HANA system. This condition records number are required to link the 3 tables: KOTD906, KONDD, KONDDP. | |
| 1037-011 | WP2 | KONDDP | KPOSN | Seq. number | S/4HANA | KONDDP | KPOSN | Seq. number | Internally assign based on the sequence of material in the upload file. | |
| 1037-012 | WP2 | KONDDP | SMATN | Cross-selling Material | S/4HANA | KONDDP | SMATN | Substitute material | MAP_MATNR | Map material no. from Source to Target using Mapping table defined here. |
| 1037-013 | WP2 | KONDDP | MEINS | Cross-selling material unit of measure | S/4HANA | KONDDP | MEINS | Substitute unit of measure | MAP_MEINS | Map unit of measure from Source to Target using Mapping table defined here. |
| 1037-014 | WP2 | KONDDP | LSTACS | Cross-selling material delivery control | S/4HANA | KONDDP | LSTACS | Cross-selling delivery control | Copy cross-selling delivery control. | |
Transformation Mapping
| Mapping Table Name | Mapping Table Description |
|---|---|
| MAP_VKORG | ECC (PF2/ WP2) to S/4AHANA Sales Organization Mapping Table |
| MAP_MATNR | ECC (PF2/ WP2) to S/4AHANA Material No. Mapping Table |
| MAP_MEINS | ECC (PF2/ WP2) to S/4AHANA Unit of Measure Mapping Table |
Transformation Dependencies
List the steps that need to occur before transformation can commence| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Source Data Integrity - Ensure extracted data is complete, accurate, and consistent. - Validate that data types and formats align with transformation requirements. | Syniti |
| 2 | Referential Integrity - Ensure dependent records are transformed together or in advance | Syniti |
| 3 | Transformation Logic and Mapping - Define data mapping rules between source and target schemas. | Data Team |
| 4 | Performance and Scalability Considerations - Optimize transformation processes for large datasets. - Ensure system resources can handle transformation workloads | Syniti |
| 5 | Logging and Error Handling - Maintain detailed logs of transformation activities. - Define error-handling procedures for failed transformations | Syniti |
Pre-Load Validation
Project Team
The following pre-load validations will be performed by the Project Team.Completeness
| Task | Action |
|---|---|
| Compare Data Counts |
|
| Validate the mandatory fields | Validate there is value for all the mandatory fields |
| Validate Primary Keys and Unique Constraints |
|
| Test Referential Integrity | Confirm dependent records exist in related tables, such as material master, unit of measure in S/4HANA. |
Accuracy
| Task | Action |
|---|---|
| Validate the transformation | Validate the fields which require transformation have the value after transformation instead of the original field value |
| Check Data Consistency |
|
Business
The following pre-load validations will be performed by the business.Completeness
| Task | Action |
|---|---|
| Compare Data Counts |
|
| Review populated templates for missing or incorrect values | Use checklists to verify completeness and correctness before submission. |
Accuracy
| Task | Action |
|---|---|
Conversion Accuracy | Business Data Owner/s to verify that all the data in the load table/ file is accurate as per endorsed transformation/ mapping rules (and signed-off DCT data). |
Load
The load process includes:
- Execute the automated data load into target system using load tool or produce the load file as per format in Transformation Rule section if the load must be done manually.
- Once the data is loaded to the target system, it will be extracted and prepared for Post Load Data Validation
Load Run Sheet
| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Confirm readiness of final approved data sets for ECC source system - WP2 | Business / Functional Team |
| 2 | Validate transformation rules and mappings in Syniti tool | Data Team (L2C-Data) |
| 3 | Generate target-ready load files based on S/4HANA cross selling condition table format | Data Team (Syniti) |
| 4 | Review and approve load files before execution | Business / Functional Team |
| 5 | Execute the upload program in the S/4HANA system | Data Load Team |
| 6 | Monitor load progress and capture load statistics (records loaded, errors, duplicates, etc.) | Data Team (Syniti) / Technical Team |
| 7 | Extract loaded data from S/4HANA for post-load validation | Data Team (Syniti) |
| 8 | Perform post-load data validation (compare target data with source/approved files) for all loaded cross selling condition records | Data Team (L2C-Data) |
| 9 | Log and resolve any data load errors or mismatches identified during validation | Data Team (L2C-Data) + Functional Team |
| 10 | Obtain business sign-off on successful load and validation | Business Team |
| 11 | Archive load logs, error reports, and validation results for audit/compliance | Data Team (L2C-Data) / Data Team (Syniti) / PMO |
Load Phase and Dependencies
The Cross Selling will be loaded in the pre-cutover period.
Before loading, it will have dependency on the configuration and data objects in the S/4HANA. The configuration needs to be transported into the respective system first.
Configuration
| Item # | Configuration Item |
|---|---|
| 1 | Sales Organization |
| 2 | Cross Selling Condition Table |
| 3 | Cross Selling Access Sequence |
| 4 | Cross Selling Condition Type |
| 5 | Cross Selling Procedure |
| 6 | Define Customer Procedures for Cross Selling |
| 7 | Define Document Procedures for Cross Selling |
| 8 | Assign Document Procedure for Cross Selling to Sales Document Types |
| 9 | Define Cross Selling Profile |
| 10 | Assign Cross Selling Profile |
Conversion Objects
| Object # | Preceding Object Conversion Approach |
|---|---|
2003 | Materials - Sales view with sales long text |
Error Handling
| Error Type | Error Description | Action Taken |
|---|---|---|
Configuration/ Data Transformation | The value XXX for field XXX doesn't exist |
|
Data Error | The Material Master is not defined | Validate the Material Master relevancy rule and maintain the material master if it is in migration scope. |
Post-Load Validation
Project Team
The following post-load validations will be performed by the Project Team.Completeness
| Task | Action |
|---|---|
Validate Record count | Validate all tables has the same records as the loading file |
Perform Source-to-Target Comparisons |
|
Accuracy
| Task | Action |
|---|---|
| Conduct Post-Migration Reconciliation | Generate reports comparing pre- and post-migration data; and the field value are identical. |
| Perform Manual Testing | Pick up a few random Sales Organization and Material, and run t-code: VB43 to validate the Cross Selling can be displayed with correct records. |
Business
Post-load validation is a critical step in data migration, ensuring that transferred data is accurate, complete, and functional within the target system.
1. Ensuring Data Integrity
After migration, data must be consistent with its original structure. Post-load validation checks for missing records, incorrect mappings, and formatting errors to prevent discrepancies.
2. Business Continuity
Faulty data can disrupt operations, leading to financial losses and inefficiencies. Validating post-load data ensures that applications function as expected, preventing downtime.
3. Error Detection and Resolution
By validating data post-migration, businesses can detect anomalies early, reducing the cost and effort required for corrections
Completeness
| Task | Action |
|---|---|
| Perform Source-to-Target Comparisons | Validate that migrated data matches source records count. |
| Conduct Post-Migration Reconciliation | Go through post-load validation reports comparing pre- and post-migration data. |
Accuracy
| Task | Action |
|---|---|
| Perform Manual Testing | Conduct manual spot-checks for additional assurance. |
Key Assumptions
- Cross Selling Master Data Standard is up to date as on the date of documenting this conversion approach and data load.
- Cross Selling is in scope based on data design and any exception requested by business.
- There will be 3 SAP instances, one for ROW, one for China and one for CUI only.
See also
Change log
Workflow history
| Title | Last Updated By | Updated | Status | |
|---|---|---|---|---|
| There are no pages at the moment. | ||||
