| Status |
| |
|---|---|---|
| Owner | ||
| Stakeholders |
Purpose
The purpose of this document is to define the conversion approach and ensure a smooth transition of rebate-related data from the legacy ECC systems into Condition Contracts in S/4HANA, aligning with the new data structures and functional capabilities offered by the Condition Contract Management framework.
In the current ECC environment, rebate agreements are extensively utilized at both Customer and Customer-Material levels. These agreements are set up to handle a mix of rebate calculation methods, including fixed amount and percentage-based rebates, with or without scales. The analysis of extracted production data indicates a significant volume of active rebate agreements that remain operational and require migration.
In S/4HANA, rebates are represented through Condition Contracts, which offer a more streamlined and flexible framework for managing settlement processes. The target design foresees consolidating the multiple rebate agreement types currently in use into a single condition contract type, capable of covering the four key rebate scenarios. This approach will reduce complexity, standardize the rebate process, and ensure consistency across customer agreements.
Through this conversion, all open rebate agreements from ECC will be transformed into corresponding condition contracts in S/4HANA, where the selection criteria and condition types will continue to be defined at the Customer and Customer-Material levels. This setup ensures that business continuity is maintained, while also leveraging the enhanced capabilities of S/4HANA for better contract management and settlement processing.
Conversion Scope
The scope of this document covers the approach for converting active Rebate Agreements from Legacy Source Systems into S/4HANA Condition Contracts.
The data from legacy system includes:
- All Rebate agreements with validity date beyond go-live freeze data
- Rebate agreements that are not fully settled
- Rebate agreements that are not deleted / cancelled
- Rebate agreements created for the sales area in scope
- Rebate agreements created for the Customer and / or Material in scope
The data from legacy system excludes:
The processing logic for the first three points is incorporated within the transformation logic for header data extraction. Points 4 and 5 do not require any specific action during extraction, as the related source tables are not part of the extraction scope.
- All the rest that are not part of the above extraction
- Rebate Agreement Status is "D - Final Settlement of Agreement Already Carried Out"
- Rebate Validity To KONA-DATBI is greater than R4 Go-Live date
- Commission Condition Records will be excluded from ETL for Manual creation of Condition contracts as BAU process
- Royalties will be excluded from ETL for Manual creation of Condition contracts as BAU process
| Source | Scope | Source Approx. No. of Records | Target System | Target Approx. No. of Records |
|---|---|---|---|---|
| PF2 | Rebate Agreements | 28 | S/4HANA - ROW | 28 |
| WP2 | Rebate Agreements | 18 | S/4HANA - ROW | 18 |
| PF2 | Rebate Agreements | 15 | S/4HANA - China | 15 |
| WP2 | Rebate Agreements | 26 | S/4HANA - China | 26 |
| PF2 | Rebate Agreements | 34 | S/4HANA - CUI | 34 |
| WP2 | Rebate Agreements | 58 | S/4HANA - CUI | 58 |
Additional Information
Multi-language Requirement
Not Applicable
Document Management
Not Applicable
Legal Requirement
N/A
Special Requirements
Target Design
The technical design of the target for this conversion approach.
| Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|---|
| Condition Contract Header | ||||||
| NA | LEGACY_NUMBER | NA | Legacy Contract Number* | Text | 80 | Required |
| WCOCOH | CONTRACT_TYPE | WCB_CONTRACT_TYPE | Condition Contract Type* | CHAR | 4 | Required |
| Not Required | Not Required | Not Required | Supplier as Partner of a Condition Contract | Text | 80 | Not Required |
| WCOCOH | CUST_OWNER | WCB_CUST_OWNER | Customer as Partner of a Condition Contract | CHAR | 10 | Required |
| WCOCOH | REFERENCE | WCB_REFERENCE | Condition Contract: Reference | CHAR | 16 | Required |
| Not Required | Not Required | Not Required | Condition Contract: Assignment | Text | 16 | Not Required |
| WCOCOH | ZTERM | DZTERM | Terms of Payment Key | CHAR | 4 | Required |
| Not Required | Not Required | Not Required | Cash (Prompt Payment) Discount Days | Number | 3 | Not Required |
| Not Required | Not Required | Not Required | Cash Discount Percentage 1 | Number | 5,3 | Not Required |
| Not Required | Not Required | Not Required | Cash Discount Days 2 | Number | 3 | Not Required |
| Not Required | Not Required | Not Required | Cash Discount Percentage 2 | Number | 5,3 | Not Required |
| Not Required | Not Required | Not Required | Net Payment Terms Period | Number | 3 | Not Required |
| WCOCOH | ZLSCH | DZLSCH | Payment Method | CHAR | 1 | Required |
| Not Required | Not Required | Not Required | Inactive CC/Partner | Text | 80 | Not Required |
| WCOCOH | DATE_FROM | WCB_DATE_FROM | Valid From | DATS | 8 | Required |
| WCOCOH | DATE_TO | WCB_DATE_TO | Valid To | DATS | 8 | Required |
| WCOCOH | EXT_NUM | WCB_EXTERNAL_NUMBER | External Document Identifier | CHAR | 30 | Required |
| WCOCOH | CC_CURR | WCB_CC_CURR | Currency of Condition Contract | CUKY | 5 | Required |
| Not Required | Not Required | Not Required | Exchange Rate | Number | 9,5 | Not Required |
| Not Required | Not Required | Not Required | Translation Date | Date | 10 | Not Required |
| Not Required | Not Required | Not Required | Exchange Rate Type | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Access Type | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Predecessor Condition Contract | Text | 10 | Not Required |
| Not Required | Not Required | Not Required | Condition Contract Purpose | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | External Reference Document Category | Text | 80 | Not Required |
| WCOCOH | EXT_REF | WCB_EXTERNAL_NUMBER2 | External Reference | CHAR | 32 | Required |
| Not Required | Not Required | Not Required | Business Transaction | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | VAT Registration Number | Text | 20 | Not Required |
| Not Required | Not Required | Not Required | Amount Fields Split Criteria Group | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Tax Country / Region | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Process Variant | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | External Reference Item | Number | 10 | Not Required |
| Not Required | Not Required | Not Required | CC Determination Relevance in Pricing | Text | 1 | Not Required |
| Not Required | Not Required | Not Required | Tax Reporting Country/Region | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | User Status | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Condition Contract: External Partner | Text | 10 | Not Required |
| Not Required | Not Required | Not Required | Purchasing Organization | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Purchasing Group | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Company Code | Text | 80 | Not Required |
| WCOCOH | VKORG | VKORG | Sales Organization | CHAR | 4 | Required |
| WCOCOH | VTWEG | VTWEG | Distribution Channel | CHAR | 2 | Required |
| WCOCOH | SPART | SPART | Division | CHAR | 2 | Required |
| WCOCOH | VKGRP | VKGRP | Sales Group | CHAR | 3 | Required |
| WCOCOH | VKBUR | VKBUR | Sales Office | CHAR | 4 | Required |
| Not Required | Not Required | Not Required | External Guid | Text | 32 | Not Required |
| WCOCOH | SETTL_CAL_FINAL | WB2_SETTLEMENT_CALENDAR | Calendar for Final Settlement | CHAR | 2 | Optional |
| Not Required | Not Required | Not Required | Calendar for Partial Settlement | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Accruals Deferral Calendar | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Settlement Type Supplier | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Settlement Type Customer | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | CCS: Settlement Material | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Contract Extension Calendar | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Prior Supplier | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Calendar for Delta Settlement | Text | 80 | Not Required |
| WCOCOH | SETTL_CAL_ACCR | WB2_SETTLEMENT_CALENDAR_ACCR | Calendar for Delta Accruals Settlement | CHAR | 2 | Optional |
| WCOCOH | AF_GROUP | WB2_AMOUNT_FIELDS_GROUP | Amount Fields Group | CHAR | 4 | Required |
| Not Required | Not Required | Not Required | Settlement Unit of Measure | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Settlement Unit of Weight | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Settlement Unit of Volume | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Settlement Points Unit | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Settlement Variant in Condition Contract | Text | 80 | Not Required |
| WCOCOH | BVTAB_GROUP | WB2_BVTAB_GROUP | Business Volume Table Group | Text | 80 | Required |
| Not Required | Not Required | Not Required | Worker as Partner of Condition Contract | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Settlement Type Worker | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Worker Cost Center | Text | 80 | Not Required |
| Not Required | Not Required | Not Required | Data Controller | Text | 80 | Not Required |
| Condition Structure Fields | ||||||
| N/A | LEGACY_NUMBER | N/a | Legacy Contract Number* | CHAR | 80 | Required |
| N/A | ORDER_KEY | N/a | User-Defined Key* | CHAR | 10 | Required |
| KONH | KOTABNR | KOTABNR | Condition Table* | CHAR | 3 | Required |
| KONH | KVEWE | KVEWE | Condition Usage | CHAR | 1 | Required |
| KONH | KAPPL | KAPPL | Condition Application | CHAR | 2 | Required |
| KONH | KSCHL | KSCHA | Condition Type* | CHAR | 4 | Required |
| KONH | DATAB | DATAB | Valid-From Date | DATS | 8 | Required |
| KONH | DATBI | DATBI | Valid To Date | DATS | 8 | Required |
| COND_TABLE | KUNNR | KUNNR_V | Customer Number | CHAR | 10 | Required |
| COND_TABLE | MATNR | MATNR | Material Number | CHAR | 40 | Optional |
| Not Required | Not Required | Not Required | Product Hierarchy | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Volume Rebate Group | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Commission Group | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Material Group | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Supplier Subrange | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Condition Group | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Material Group Hierarchy | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Ship-To Party | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Material Group 1 | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Material Group 2 | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Material Group 3 | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Material Group 4 | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Material Group 5 | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Sales Organization | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Distribution Channel | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Division | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Customer Group | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Customer Price Group | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Material Price Group | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Settlement Group 1 (Purchasing) | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Supplier's Account Number | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Purchasing Organization | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Purchasing Info Record Category | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Plant | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Supplying Plant in Case of Stock Trsfer | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Prior Supplier | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Material Group | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Cost Center | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Company Code | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Goods Supplier | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Sales Group | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Sales Office | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Customer Attribute for Condition Groups | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Sold-to Party | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Payer | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Bill-to Party | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Release Status | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Pricing Reference Material of Main Item | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Product Hierarchy 1 | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Product Hierarchy 2 | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Product Hierarchy 3 | Not Required | Not Required | Not Required |
| Item Condition | ||||||
| N/A | LEGACY_NUMBER | N/a | Legacy Contract Number* | CHAR | 80 | Required |
| N/A | ORDER_KEY | N/a | User-Dfnd Key* | CHAR | 10 | Required |
| T685A | KRECH | KRECH | Calculation Type | CHAR | 1 | Optional |
| KONP | KBETR | KBETR_KOND | Amount | CURR | 11,2 | Required |
| KONP | KONWA | KONWA | Condition Unit (Currency or Percentage) | CUKY | 5 | Required |
| KONP | KPEIN | KPEIN | Pricing Unit | DEC | 5 | Required |
| KONP | KMEIN | KMEIN | Unit of Measure | UNIT | 3 | Required |
| T685 | KVEWE | KVEWE | Condition Usage | CHAR | 1 | Required |
| KONP | KAPPL | KAPPL | Condition Application | CHAR | 2 | Required |
| KONP | KSCHL | KSCHA | Condition Type | CHAR | 4 | Required |
| KONP | KONWA | KONWA | Condition Currency | CUKY | 5 | Optional |
| KONP | KNOWS | KNOWS | Scale Currency | CUKY | 5 | Optional |
| KONP | KONMS | KONMS | Scale Unit of Measure | UNIT | 3 | Optional |
| Not Required | Not Required | Not Required | Numerator For Convers. | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Denom. For Conversion | Not Required | Not Required | Not Required |
| KONP | KZBZG | KZBZG | Scale Basis | CHAR | 1 | Optional |
| KONP | STFKZ | STFKZ | Scale Type | CHAR | 1 | Optional |
| Not Required | Not Required | Not Required | (OBSOLETE) Reference | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Reference | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Accrual Amount | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Tax on Sales/Purchases Code | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Withholding Tax Code | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Condition Exclusion Indicator | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Terms of Payment Key | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Fixed Value Date | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Customer Number | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Account Number of Supplier | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Max. Number of Orders | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Maximum Condition Base Value | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Maximum Condition Value | Not Required | Not Required | Not Required |
| Not Required | Not Required | Not Required | Additional Value Days | Not Required | Not Required | Not Required |
| Condition Scale | ||||||
| N/A | LEGACY_NUMBER | N/A | Legacy Contract Number* | CHAR | 80 | Optional |
| N/A | ORDER_KEY | N/A | User-Dfnd Key* | CHAR | 10 | Optional |
| N/A | LINE_NO | N/A | Line Number* | NUM | 4 | Optional |
| KONM | KBETR | KBETR | Amount/Percentage in Case of Scale | CURR | 11,2 | Optional |
| KONW | KSTBW | KSTBW | Condition Scale Basis Value | CURR | 15,2 | Optional |
| KONM | KSTBM | KSTBM | Condition Scale Quantity | QUAN | 15 | Optional |
| Business Volume Base | ||||||
| N/A | LEGACY_NUMBER | N/A | Legacy Contract Number* | CHAR | 80 | Required |
| N/A | ORDER_KEY | N/A | User-Defined Key* | CHAR | 32 | Required |
| WB2_D_BUSVOLBASE | FIELDCOMB | WB2_BVB_FIELDCOMB | Field Combination for the Business Volum | CHAR | 4 | Required |
| WB2_D_BUSVOLBASE | INCL_EXCL | WCB_BVB_INCL_EXCL | Status Including / Excluding | CHAR | 1 | Required |
| N/A | VENDOR_NO_NEW | N/A | Account Number of Supplier | CHAR | 80 | Not Required |
| WB2_D_BUSVOLBASE | X_KUNNR | KUNNR | Customer Number | CHAR | 10 | Required |
| N/A | PURCH_ORG_NEW | N/A | Purchasing Organization | CHAR | 80 | Not Required |
| N/A | PUR_GROUP_NEW | N/A | Purchasing Group | CHAR | 80 | Not Required |
| N/A | SALESORG_NEW | N/A | Sales Organization | CHAR | 80 | Not Required |
| N/A | DISTR_CHAN_NEW | N/A | Distribution Channel | CHAR | 80 | Not Required |
| N/A | DIVISION_NEW | N/A | Division | CHAR | 80 | Not Required |
| N/A | COMP_CODE_NEW | N/A | Company Code | CHAR | 80 | Not Required |
| N/A | PLANT_NEW | N/A | Plant | CHAR | 80 | Not Required |
| N/A | VEND_PART_NEW | N/A | Supplier Subrange | CHAR | 80 | Not Required |
| N/A | MATL_GROUP_NEW | N/A | Material Group | CHAR | 80 | Not Required |
| N/A | CUST_LIST_NEW | N/A | Customer List | CHAR | 80 | Not Required |
| N/A | VENDOR_LIST_NEW | N/A | Supplier List | CHAR | 80 | Not Required |
| N/A | EXTERNAL_GUID | N/A | External Guid | CHAR | 32 | Not Required |
| N/A | SELECTION_GROUP | N/A | Selection Group | CHAR | 80 | Not Required |
| WB2_D_BUSVOLBASE | MATNR | MATNR | Material Number | CHAR | 40 | Optional |
| Settlement Dates | ||||||
| N/A | LEGACY_NUMBER | N/A | Legacy Contract Number* | CHAR | 80 | Required |
| N/A | ORDER_KEY | N/A | User-Dfnd Key* | CHAR | 32 | Required |
| WB2_D_SETTL_CAL | SETTLEMENT_DATE | WB2_SETTLEMENT_DATE | Settlement Date* | DATE | Required | |
| WB2_D_SETTL_CAL | SETTLEMENT_DATE_TYPE | WB2_SETTLEMENT_DATE_TYPE | Settlement Date Type Examples for values are: | CHAR | 1 | Required |
| WB2_D_SETTL_CAL | REF_SETTL_DATE | WB2_REF_SETTLEMENT_DATE | Reference Date | DATE | Optional | |
| WB2_D_SETTL_CAL | EXT_GUID | WCB_EXT_GUID_CAL | External GUID | CHAR | 16 | Optional |
| WB2_D_SETTL_CAL | SETTL_EXEC_DATE | WB2_SETTLEMENT_EXECUTION_DATE | Execution Date | DATE | Optional | |
| WB2_D_SETTL_CAL | BUSVOL_DATE_FROM | WB2_BUSVOL_DATE_FROM | Business Volume Date From | DATE | Optional | |
| WB2_D_SETTL_CAL | BUSVOL_DATE_TO | WB2_BUSVOL_DATE_TO | Business Volume Date To | DATE | Optional | |
| WB2_D_SETTL_CAL | VALDT | WB2_VALDT_SETTL_CAL | Fixed Value Date | DATE | Optional | |
Data Cleansing
| ID | Criticality | Error Message/Report Description | Rule | Output | Source System | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 9066-001 | C1 | Remove obsolete rebate condition records | Eliminate pricing condition records where the material, customer, or condition type is blocked or discontinued. | Remove Blocked or Similation / planning mode Rebate Agreements | Extract only Released rebate agreements ( KONA-KFRST == SPACE ) | List of Released agreementsList of obsolete records | WP2/PF2 | ||||
| 9066-002 | C1 | Remove Completed / release for settlement Rebate Agreements | Extract only OPEN rebate agreements ( KONA-BOSTA == SPACE ) | List of Open rebate agreements | WP2/PF2 | ||||||
| 9066-003 | C1 | Validate Customer-Material master data | Ensure pricing rebate condition records refer to valid and active Customer and Material master records .by checking against white listed Customers and Materisl Sales view data | List of invalid rebate with valid Customer Material combinations | WP2/PF2 | ||||||
| 9066-003004 | C1 | Remove expired condition records | Delete condition records where validity end date has already passed. Exception the condition records required for open sales orders under migration scope SELECT KNUMH, KOTABNR from KONH where KNUMA_BO = KONA-KNUMA and DATEBI >= GO-LIVE-DATE | List of valid rebate condition List of expired records | WP2/PF2 | ||||||
| 9066-004005 | C1 | Validate mandatory fields | Check for missing mandatory fields (e.g. Condition Value, Currency, UoM, Scale data, Validity dates). | List of incomplete records | WP2/PF2 | ||||||
| 9066-005006 | C2 | Detect duplicate condition records | Identify and flag duplicate rebate condition records for the same condition type, key combination, and validity period. This is possible as the source is from multiple systems WP2 and PF2 | List of duplicate records | WP2/PF2 | ||||||
| 9066-006007 | C1 | Validate currency consistency | Validate that the currency used in pricing conditions matches the currency allowed for the corresponding sales organization or customer master data. | List of inconsistent currency | WP2/PF2 | 9066-007 | C2 | Validate scale data | Identify and correct scale records with inconsistent or overlapping ranges (quantity/value). | List of scale issues | WP2/PF2 |
| 9066-008 | C1 | Validate unit of measure consistency | Validate unit of measure used in rebate conditions aligns with material master base UoM and allowed UoMs. | List of inconsistent UoM records | WP2/PF2 |
Conversion Process
The high-level process is represented by the diagram below:
Data is extracted from SAP ECC System WP2 and PF2, cleansed and transformed for quality and accuracy, then migrated via the Migration Cockpit into multiple SAP S/4HANA systems with dashboards ensuring visibility and control throughout the process. This process follows the ETL (Extract → Transform → Load) framework, ensuring high-quality, validated, and reconciled data is migrated smoothly from ECC to S/4HANA
Data Privacy and Sensitivity
Extraction
Extract data from a source into . There are 2 possibilities:
- The data exists. connects to the source and loads the data into . There are 3 methods:
- Perform full data extraction from relevant tables in the source system(s).
- Perform extraction through the application layer.
- Only if ; 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 . This is to be conducted using DCT (Data Collection Template) in
The agreed Relevancy criteria is applied to the extracted records to identify the records that are applicable for the Target loads
Source System: SAP ECC WP2 and PF2.
Scope: Open rebate agreements, condition records, scales.
Extraction Logic:
- Retrieve rebate agreements from VBO3 transactions (tables: KONA, KONH, KONP, KONW, KONM).
- Capture validity dates, rebate basis (sales volume/turnover), and settlement statuses.
- Include open balances and accruals that need to be carried forward.
Objective: Create a comprehensive snapshot of all open rebate agreements as of the cutover date.
Extraction Run Sheet
| Req # | Requirement Description | Team Responsible |
|---|---|---|
| 9066-001 | Confirm scope and extraction approach for each ECC source systems WP2, PF2 (direct DB or manual extract) | Data Team (L2C), Data Team (Syniti) |
| 9066-002 | Establish and validate Syniti connectivity to both ECC source systems | Technical / Basis Team, Data Team (Syniti) |
| 9066-003 | Perform full data extraction from relevant rebate agreements from VBO3 transactions (tables: KONA, KONH, KONP, KONW, KONM) from WP2 and PF2 Systems | Data Team (Syniti) |
| 9066-004 | Apply agreed Relevancy Criteria to filter only applicable Rebate agreements and rebate condition records for S/4HANA (e.g., active rebates, active condition records, valid dates, active customers/materials) | Data Team (L2C), Data Team (Syniti) |
| 9066-005 | In case of restricted access or connectivity issues, receive pre-extracted rebate reports/files from source system team and prepare upload file for upload via migration cockpit | Data Team (L2C), Data Team (Syniti) |
| 9066-006 | Perform data quality checks on extracted records (e.g., missing key fields, invalid dates, incorrect formats) | Data Team (L2C), Data Team (Syniti) |
| 9066-007 | Review and approve extracted data sample sets from each source system before transformation begins | Business / Functional Team |
| 9066-008 | Archive raw extracts and maintain extraction audit logs for traceability | Data Team (L2C), Data Team (Syniti) / PMO Team |
Selection Screen
| Selection Ref Screen | Parameter Name | Selection Type | Requirement | Value to be entered/set |
|---|---|---|---|---|
| N/A | P_CUTOFF_DATE | Single Value | Validity To date in DATBI field should be greater than this date | Date |
| N/A | P_VKORG | Range | Range of Valid sales organizations in Scope for extraction | Sales Org List |
| N/A | P_VTWEG | Range | Range of valid distribution channel in scope for extraction | Distribution Channels(Optional) |
| N/A | P_SPART | Range | Range of Divisions in scope for extraction | Divisions (Optional) |
Data Collection Template (DCT)
Target Ready Data Collection Template can be downloaded from Migration Cockpit for Condition Contracts from target S/4HANA Fiori App.DCT Rules
| Field Name | Field Description | Rule |
|---|---|---|
Extraction Dependencies
| Item # | Area | Step Description | Team Responsible |
|---|---|---|---|
| 1 | Source System Availability |
| Syensqo IT |
| 2 | Data Structure Alignment |
| Data Team(L2C), Syniti |
| 3 | Referential Integrity |
| Data Team(L2C), Syniti |
| 4 | Extraction Methodology | Define extraction type: Full load for open rebates at cutover. Delta records will follow BAU Process | 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 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
- 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 both ECC systems WP2, PF2 | Functional Team (L2C)+ Data Team (L2C) |
| 2 | Review Rebate types, rebate condition types and access tables used in each ECC source systems WP2, PF2 | Business Team + Functional Team (L2C) |
| 3 | Map legacy field values to S/4HANA target values (including field-level mapping and technical names) | Data Team (L2C), Data Team (Syniti) |
| 4 | Define value mapping rules for fields requiring standardization or harmonization across the two source systems WP2, PF2 (i.e., USD, US$ mapped to USD, and ZD01 and ZDISC from ECC system mapped to ZD01 etc., | Functional Team (L2C)+ Data Team (L2C) |
| 5 | Identify and agree on default values where legacy data is incomplete or inconsistent | Business Team + Functional Team (L2C) |
| 6 | Configure transformation rules in Syniti Migrate (including calculated fields, formatting rules, etc.) | Data Team (Syniti), Data Team (L2C) |
| 7 | Review transformation logic and mappings with Business for confirmation | Business Team + Functional Team (L2C) |
| 8 | Perform initial transformation run and generate draft target-ready dataset | Data Team (Syniti), |
| 9 | Review draft target-ready data for structure and completeness | Data Team (L2C), Functional Team (L2C) |
| 10 | Share transformed data with Business for Pre-load Validation | Business Team |
| 11 | Incorporate feedback from Business and refine mappings or transformation logic as needed | Data Team (L2C) |
| 12 | Finalize and approve transformed data as Target Ready Load File | Business + Functional (L2C) + Data Team (L2C) |
| 13 | 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 Name | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|---|
| Condition Contract Header | ||||||||||
| ||||||||||
| 9066-01 | WP2, PF2 | KONA | KNUMA | Agreement Number | S/4HANA | WCOCOH | NUM | Legacy Contract Number* This refers to LEGACY_NUMBER field in Migration data file definition. | RULE | Temporary number of target condition record. The record will be renumbered in the S/4HANA system. Please refer to the below Key Adjustment for Legacy KNUMA section for the KNUMA transformation Rule |
| 9066-02 | WP2, PF2 | KONA | BOART | Agreement Type | S/4HANA | WCOCOH | CONTRACT_TYPE | Contract Type | FIXED VALUE | ZS01 Copy of 0S01 |
| 9066-03 | WP2, PF2 | KONA | BONEM | Rebate Recipient | S/4HANA | WCOCOH | CUST_OWNER | Customer as Partner of Contract | MAP_KUNNR | |
| 9066-04 | WP2, PF2 | KONA | KNUMA | Agreement Number | S/4HANA | WCOCOH | REFERENCE | External Reference | The reference document number is the document number at the business partner. | |
| 9066-05 | WP2, PF2 | KONA | ZTERM | Payment Term | S/4HANA | WCOCOH | ZTERM | Payment Term | MAP_ZTERM | |
| 9066-06 | WP2, PF2 | KONA | ZLSCH | Payment Method | S/4HANA | WCOCOH | ZLSCH | Payment Methos | MAP_ZLSCH | |
| 9066-07 | WP2, PF2 | KONA | DATAB | Agreement valid-from date | S/4HANA | WCOCOH | DATE_FROM | Valid From | ||
| 9066-08 | WP2, PF2 | KONA | DATBI | Agreement valid-to date | S/4HANA | WCOCOH | DATE_TO | Valid To | ||
| 9066-09 | WP2, PF2 | KONA | ABREX | External Document Identifier | S/4HANA | WCOCOH | EXT_NUM | External Document Identifier | An identifier which is specified by a user, and is used to define a condition contract. If you want to use your own alphanumeric system for identifying your contracts, you can enter your identifiers in this field. In addition, the system already assigns a unique number that cannot be changed to each contract when it is created. The entries in either one of these fields can be used as search criterion when looking for a particular contract. | |
| 9066-10 | WP2, PF2 | KONA | WAERS | Currency Key | S/4HANA | WCOCOH | CC_CURR | Currency of Condition Contract | ||
| 9066-11 | WP2, PF2 | Fixed value "99" - External Document | External Reference Document Category | S/4HANA | WCOCOH | EXT_REF_CAT | External Reference Document Category | Fixed value "99" - External Document | ||
| 9066-12 | WP2, PF2 | KONA | KNUMH | External Number 2 | S/4HANA | WCOCOH | EXT_REF | External Number 2 | If a Condition Contract is created via an API based on a source document in another system, the number of the source document can be set in this field via API. An input via User Interface is not supported. | |
| 9066-13 | WP2, PF2 | KONA | VKORG | Sales Organization | S/4HANA | WCOCOH | VKORG | Sales Organization | MAP_VKORG | |
| 9066-14 | WP2, PF2 | KONA | VTWEG | Distribution Channel | S/4HANA | WCOCOH | VTWEG | Distribution Channel | MAP_VTWEG | |
| 9066-15 | WP2, PF2 | KONA | SPART | Division | S/4HANA | WCOCOH | SPART | Division | MAP_SPART | |
| 9066-16 | WP2, PF2 | KONA | VKBUR | Sales Office | S/4HANA | WCOCOH | VKBUR | Sales Office | MAP_VKBUR | |
| 9066-17 | WP2, PF2 | KONA | VKGRP | Sales Group | S/4HANA | WCOCOH | VKGRP | Sales Group | MAP_VKGRP | |
| 9066-18 | WP2, PF2 | Fixed Value "0S02" - Rebate Basis | Amount Fields Group | S/4HANA | WCOCOH | WB2_AMOUNT_FIELDS_GROUP | Amount Fields Group | Fixed Value "0S02" - Rebate Basis | ||
| Condition Structure Fields | ||||||||||
| SELECT KNUMH, KOTABNR from KONH where KNUMA_BO = KONA-KNUMA and DATEBI >= GO-LIVE-DATE Prepare the following for each Record from KONH SELECT * FROM ("KOTE" + KONH-KOTABNR) where KNUMH = KONH-KNUMH | ||||||||||
| 9066-19 | WP2, PF2 | KONA | KNUMA | KNUMA | S/4HANA | N/A | LEGACY_NUMBER | Legacy Contract Number* | RULE | Temporary number of target condition contract. The record will be renumbered in the S/4HANA system. Please refer to the below Key Adjustment for Legacy KNUMA section for the KNUMA transformation Rule |
| 9066-20 | WP2, PF2 | KONH | KNUMH | Alternate - Running number with in KNUMA | S/4HANA | N/A | ORDER_KEY | User-Defined Key* | RULE | Temporary number of target condition record. The record will be renumbered in the S/4HANA system. Please refer to the below Key Adjustment for Legacy KNUMH section for the KNUMH transformation Rule |
| 9066-21 | WP2, PF2 | KONH | KOTABNR | Source Table KOTE001 | S/4HANA | KONH | KOTABNR | Condition Table* | MAP_KSCHL_REBATE | Target condition tables can be determined from this mapping table for each combination of Condition type and Table number |
| 9066-22 | WP2, PF2 | Fixed Value "A" | S/4HANA | KONH | KVEWE | Condition Usage | Fixed Value "A" | |||
| 9066-23 | WP2, PF2 | "KOTE" + KONH-KOTABNR | KAPPL | Condition Application | S/4HANA | KONH | KAPPL | Condition Application | Expected Value "V" | |
| 9066-24 | WP2, PF2 | "KOTE" + KONH-KOTABNR | KSCHL | Condition Type* | S/4HANA | KONH | KSCHL | Condition Type* | MAP_KSCHL_REBATE | |
| 9066-25 | WP2, PF2 | "KOTE" + KONH-KOTABNR | DATAB | Valid-From Date | S/4HANA | KONH | DATAB | Valid-From Date | ||
| 9066-26 | WP2, PF2 | "KOTE" + KONH-KOTABNR | DATBI | Valid To Date | S/4HANA | KONH | DATBI | Valid To Date | ||
| 9066-27 | WP2, PF2 | "KOTE" + KONH-KOTABNR | KUNNR | Customer Number | S/4HANA | COND_TABLE | KUNNR | Customer Number | COND_TABLE = MAP_KSCHL_REBATE | |
| 9066-28 | WP2, PF2 | "KOTE" + KONH-KOTABNR | MATNR | Material Number | S/4HANA | COND_TABLE | MATNR | Material Number | COND_TABLE = MAP_KSCHL_REBATE | |
| Item Condition | ||||||||||
Extraction Logic for Condition RecordsFor each target condition contract, the extraction of condition records follows a two-step approach: 1. Retrieve Condition Headers (KONH)Extract the condition header numbers associated with the rebate agreement (KONA). SELECT KNUMH
2. Retrieve Condition Items (KONP) For each condition header (KNUMH) retrieved in Step 1, fetch the corresponding condition details from KONP. SELECT *
| ||||||||||
| 9066-29 | WP2, PF2 | KONA | KNUMA | KNUMA | S/4HANA | N/A | LEGACY_NUMBER | Legacy Contract Number* | RULE | Temporary number of target condition contract. The record will be renumbered in the S/4HANA system. Please refer to the below Key Adjustment for Legacy KNUMA section for the KNUMA transformation Rule |
| 9066-30 | WP2, PF2 | KONH | KNUMH | Alternate - Running number with in KNUMA | S/4HANA | N/A | ORDER_KEY | User-Defined Key* | RULE | Temporary number of target condition record. The record will be renumbered in the S/4HANA system. Please refer to the below Key Adjustment for Legacy KNUMH section for the KNUMH transformation Rule |
| 9066-31 | WP2, PF2 | SELECT KRECH from T685A where KAPPL = 'V' and KSCHL = KOTE001-KSCHL | S/4HANA | T685A | KRECH | Calculation Type | ||||
| 9066-32 | WP2, PF2 | KONP | KBETR | S/4HANA | KONP | KBETR | Amount | Please apply Conversion logic for Condition values provided below | ||
| 9066-33 | WP2, PF2 | KONP | KONWA | S/4HANA | KONP | KONWA | Condition Unit (Currency or Percentage) | |||
| 9066-34 | WP2, PF2 | KONP | KPEIN | S/4HANA | KONP | KPEIN | Pricing Unit | |||
| 9066-35 | WP2, PF2 | KONP | KMEIN | S/4HANA | KONP | KMEIN | Unit of Measure | |||
| 9066-36 | WP2, PF2 | Fixed Value "A" | S/4HANA | T685 | KVEWE | Condition Usage | Fixed Value "A" | |||
| 9066-37 | WP2, PF2 | KONP | KAPPL | S/4HANA | KONP | KAPPL | Condition Application | |||
| 9066-38 | WP2, PF2 | KONP | KSCHL | S/4HANA | KONP | KSCHL | Condition Type | MAP_KSCHL_REBATE | ||
| 9066-39 | WP2, PF2 | KONP | KONWA | S/4HANA | KONP | KONWA | Condition Currency | |||
| 9066-40 | WP2, PF2 | KONP | KNOWS | S/4HANA | KONP | KNOWS | Scale Currency | |||
| 9066-41 | WP2, PF2 | KONP | KONMS | S/4HANA | KONP | KONMS | Scale Unit of Measure | |||
| 9066-42 | WP2, PF2 | KONP | KZBZG | S/4HANA | KONP | KZBZG | Scale Basis | |||
| 9066-43 | WP2, PF2 | KONP | STFKZ | S/4HANA | KONP | STFKZ | Scale Type | |||
| Condition Scale | ||||||||||
To retrieve the relevant condition records:
| ||||||||||
| Key fields for Scales | ||||||||||
| 9066-44 | WP2, PF2 | KONA | KNUMA | KNUMA | S/4HANA | N/A | LEGACY_NUMBER | Legacy Contract Number* | RULE | Temporary number of target condition contract. The record will be renumbered in the S/4HANA system. Please refer to the below Key Adjustment for Legacy KNUMA section for the KNUMA transformation Rule |
| 9066-45 | WP2, PF2 | KONH | KNUMH | User-Defined Key from the Item Conditions | S/4HANA | N/A | ORDER_KEY | User-Defined Key* | RULE | Temporary number of target condition contract. The record will be renumbered in the S/4HANA system. Please refer to the below Key Adjustment for Legacy KNUMH section for the KNUMH transformation Rule |
| 9066-46 | WP2, PF2 | KONM/KONW | KLFN1 | S/4HANA | KONM/KONW | KLFN1 | Line Number* | Field name LINE_NO in migration template | ||
| Scale Details | ||||||||||
| 9066-47 | WP2, PF2 | KONM/KONW | KBETR | KONM / KNOW table based on Scale Type / when Available | S/4HANA | KONM | KBETR | Amount/Percentage in Case of Scale | Please apply Conversion logic for Condition values provided below | |
| 9066-48 | WP2, PF2 | KONW | KSTBW | S/4HANA | KONW | KSTBW | Condition Scale Basis Value | |||
| 9066-49 | WP2, PF2 | KONM | KSTBM | S/4HANA | KONM | KSTBM | Condition Scale Quantity | |||
| Business Volume Base | ||||||||||
Mapping Logic for Target Condition Contracts For each target condition contract, apply the following steps: 1. Retrieve Header Information (KONH): Extract the rebate condition header records linked to the agreement (KONA).SELECT KNUMH, KOTABNR 2. Retrieve Condition Records (KOTE*): For each header record retrieved in Step 1, fetch the condition details from the relevant condition table ( | ||||||||||
| 9066-50 | WP2, PF2 | KONA | KNUMA | KNUMA | S/4HANA | N/A | LEGACY_NUMBER | Legacy Contract Number* | RULE | Temporary number of target condition contract. The record will be renumbered in the S/4HANA system. Please refer to the below Key Adjustment for Legacy KNUMA section for the KNUMA transformation Rule |
| 9066-51 | WP2, PF2 | KONH | KNUMH | Alternate - Running number with in KNUMA | S/4HANA | N/A | ORDER_KEY | User-Defined Key* | RULE | Temporary number of target condition contract. The record will be renumbered in the S/4HANA system. Please refer to the below Key Adjustment for Legacy KNUMH section for the KNUMH transformation Rule |
| 9066-52 | WP2, PF2 | Fixed Value for Customer Number field "KUNNR" | S/4HANA | WB2_D_BUSVOLBASE | FIELDCOMB | Field Combination for the Business Volume | Fixed Value for Customer Number field "KUNNR" Standard value is '0001' for customer from table WB2_C_BVB_FC | |||
| 9066-53 | WP2, PF2 | "KOTE" + KONH-KOTABNR | KUNNR | Customer Number | S/4HANA | WB2_D_BUSVOLBASE | X_KUNNR | Customer Number | ||
| 9066-54 | WP2, PF2 | KONA | KNUMA | KNUMA | S/4HANA | WB2_D_BUSVOLBASE | LEGACY_NUMBER | Legacy Contract Number* | RULE | Temporary number of target condition contract. The record will be renumbered in the S/4HANA system. Please refer to the below Key Adjustment for Legacy KNUMA section for the KNUMA transformation Rule |
| 9066-55 | WP2, PF2 | KONH | KNUMH | Alternate - Running number with in KNUMA | S/4HANA | N/A | ORDER_KEY | User-Defined Key* | ||
| 9066-56 | WP2, PF2 | Fixed Value for Customer Number field "MATNR" | S/4HANA | WB2_D_BUSVOLBASE | FIELDCOMB | Field Combination for the Business Volume | Fixed Value for Customer Number field "MATNR" Standard value is '0009' for Material from table WB2_C_BVB_FC | |||
| 9066-57 | WP2, PF2 | "KOTE" + KONH-KOTABNR | MATNR | Material Number | S/4HANA | WB2_D_BUSVOLBASE | MATNR | Customer Number | ||
| Settlement Dates | ||||||||||
| Following records created one per Rebate / Condition Contract | ||||||||||
| 9066-58 | WP2, PF2 | KONA | KNUMA | System ID+KNUMA | S/4HANA | N/A | LEGACY_NUMBER | Legacy Contract Number* | System ID+KNUMA | |
| 9066-59 | WP2, PF2 | KONH | KNUMH | Alternate - Running number with in KNUMA | S/4HANA | N/A | ORDER_KEY | User-Defined Key* | ||
| 9066-60 | WP2, PF2 | KONA | DATBI | Settlement Date* | S/4HANA | WB2_D_SETTL_CAL | SETTLEMENT_DATE | Settlement Date* | ||
| 9066-61 | WP2, PF2 | Default Blank Value | Settlement Date Type | S/4HANA | WB2_D_SETTL_CAL | SETTLEMENT_DATE_TYPE | Settlement Date Type | Leave BLANK value which means Final Settlement | ||
| 9066-62 | WP2, PF2 | Default Blank Value | Reference Date | S/4HANA | WB2_D_SETTL_CAL | REF_SETTL_DATE | Reference Date | Required only for Delta Settlements. Currently no data exist in source | ||
Conversion logic for Condition values
When copying data between SAP tables condition values from field KBETR can be copied directly without transformation. But for ETL involving extracted load file, condition values may require transformation depending on the condition type and currency.
The following rules apply:
- Condition Type (%)
- If the condition type is percentage (T685A-KRECH = A), divide the value by 10.
- Currency Conversion (TCURX Table Reference)
- Check the number of decimal places maintained for the currency in TCURX.
- Conversion rule:
Scale Factor=10(2−Decimal_Places)
- If the result is positive, multiply the value.
- If the result is negative, divide the value.
- If the result is zero, keep the value unchanged.
- Other Cases
- Copy the value as-is.
Example :
| Condition Type | Currency | Original Value | TCURX Decimal Places | Calculation | Converted Value |
| % (T685A-KRECH = A) | % | 150 | - | 150 ÷ 10 | 15 |
| Value | JPY | 6.54 | 0 | 2 – 0 = 2 → Multiply by 100 | 654 |
| Value | USD4 | 10.4 | 4 | 2 – 4 = -2 → Divide by 100 | 0.104 |
| Value | EUR | 200 | 2 | 2 – 2 = 0 → No change | 200 |
Key Adjustment for Legacy KNUMA
During data migration, the legacy key KNUMA must be adjusted to ensure uniqueness across multiple source systems.
Replace the first character of the 10-digit legacy KNUMA with a system-specific prefix:
PF2: Replace the first character with 1
WP2: Replace the first character with 2
Example:
Legacy KNUMA
0000007589→ Migrated as1000007589(for PF2)Legacy KNUMA
0000007589→ Migrated as2000007589(for WP2)
This ensures that condition records originating from different source systems remain uniquely identifiable in the target migration data.
Key Adjustment for Legacy KNUMH
During data migration, the legacy key KNUMH must be adjusted to ensure uniqueness across multiple source systems.
Replace the first character of the 10-digit legacy KNUMH with a system-specific prefix:
PF2: Replace the first character with 1
WP2: Replace the first character with 2
Example:
Legacy KNUMH
0016781971→ Migrated as1016781971(for PF2)Legacy KNUMH
0016781971→ Migrated as2016781971(for WP2)
This ensures that condition records originating from different source systems remain uniquely identifiable in the target migration data.
Transformation Mapping
| Mapping Table Name | Mapping Table Description |
|---|---|
| MAP_VKORG | Sales Organization Mapping table |
| MAP_VTWEG | Distribution Channel Mapping table |
| MAP_SPART | Division Mapping table |
| MAP_VKBUR | Sales office Mapping table |
| MAP_VKGRP | Sales Group Mapping table |
| MAP_ZLSCH | Payment Method Mapping table |
| MAP_ZTERM | Payment terms Mapping table |
| MAP_KSCHL_REBATE | Rebate Condition Types Mapping table [ Please refer below for proposed table structure ] |
| MAP_KUNNR | Customer Master Mapping table |
| MAP_MATNR | Material Master Mapping table |
Proposed table structure
The following mapping table for Rebate Condition Types is proposed to determine the appropriate target condition types and also transparent table. This mapping will also serve as a control mechanism to ensure that only valid records, with corresponding configurations available in the target system, are migrated. Records without target condition type or condition table name can be excluded from the extracted data.
MAP_KSCHL_REBATE
| SYSID | KSCHL | TABNAME | KOTABNR | SYSID | KSCHL | TABNAME | KOTABNR |
| System ID | ConditionType | TableName | TableNumber | TSystemID | TConditionType | TTableName | TTableNumber |
| PF2 | NVA | KOTE001 | 001 | S/4HANA | ZRS1 | A001 | 001 |
| PF2 | ZNAQ | KOTE001 | 001 | S/4HANA | ZRS1 | A001 | 001 |
| PF2 | ZNAP | KOTE001 | 001 | S/4HANA | ZRS1 | A001 | 001 |
| PF2 | NAP | KOTE001 | 001 | S/4HANA | ZRS1 | A001 | 001 |
| PF2 | NAQ | KOTE001 | 001 | S/4HANA | ZRS1 | A001 | 001 |
| WP2 | Z041 | KOTE001 | 001 | S/4HANA | ZRS1 | A001 | 001 |
| WP2 | Z042 | KOTE001 | 001 | S/4HANA | ZRS1 | A001 | 001 |
| WP2 | Z043 | KOTE003 | 003 | S/4HANA | ZRS3 | A4AO | 4AO |
| WP2 | Z044 | KOTE003 | 003 | S/4HANA | ZRS3 | A4AO | 4AO |
| WP2 | Z061 | KOTE001 | 001 | S/4HANA | ZRS1 | A001 | 001 |
| WP2 | Z063 | KOTE003 | 003 | S/4HANA | ZRS3 | A4AO | 4AO |
Transformation Dependencies
List the steps that need to occur before transformation can commence| Item # | Step Description | Team Responsible |
|---|---|---|
| 1 | Value Mapping Tables are complete | Functional Team (L2C) + Data Team (L2C) |
| 2 | Condition Contract configuration is complete | Functional Team (L2C) + Data Team (L2C) |
| 3 | Org structure configuration is complete | Functional Team (L2C) + Data Team (L2C) |
| 4 | Dependent Master Data records for Customer and Material are loaded | Functional Team (L2C) + Data Team (L2C) |
Pre-Load Validation
Project Team
Completeness
| Task | Action |
|---|---|
| Configuration | Ensure necessary configurations are in place in target system and field mapping is aligned with Condition contract type, access sequence, pricing condition types |
| Review Mapping Table | Ensure all the source organization units are mapped with target values |
| Check Values | Validate the pre-load data confirming the values are aligned with target system format and |
| Validate template structure and required field population | Ensure mandatory fields as per the target definition table are available |
Accuracy
| Task | Action |
|---|---|
| Review Mapping Table | Ensure all the source organization units, master data, payment term and condition type and related configurations are mapped with target values |
| Perform format validation (date, currency, decimal separators) | Standardize format to match SAP accepted input (e.g., YYYYMMDD for dates) |
| Conduct dry runs using Migration Cockpit for condition contracts | Analyze load results and correct format or conversion errors |
Business
Completeness
| Task | Action |
|---|---|
| Completeness | Review and confirm if the extraction contain all the open rebate agreements |
Accuracy
| Task | Action |
|---|---|
| Review rebates for duplicate or conflicting entries | Review for duplicates within key combinations (e.g., Customer, customer-material-date) |
| Validity Period Check | Review validity period of the rebate agreements |
Load
The load process includes:
- The process will involve downloading the transformed data from the Syniti system and then uploading the files into the target system using the standard SAP Migration Cockpit application to create condition contracts. The generated migration data will be used as load files, which can be directly uploaded through the Migration Cockpit.
- 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 each ECC source system WP2 and PF2 | 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 condition table format | Data Team (Syniti) |
| 4 | Review and approve load files before execution | Business / Functional Team |
| 5 | Execute automated generation manual load files using Syniti in target structure defined for Migration Cockpit data load | Data Team (Syniti) |
| 6 | Load extracted data using Migration Cockpit for condition contract creation | Data Team (L2C) |
| 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 condition contracts | 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
Configuration
| Item # | Configuration Item |
|---|---|
| Condition contract configurations | Ensure configurations are complete for the target system and mapping tables are updated accordingly |
| Condition types | Ensure the condition types are assigned with access sequence and condition tables are active for all the key combinations planned for each rebate condition type |
| Organization Data | Ensure configurations for all the organization units involved in condition contracts are imported into the target system |
Conversion Objects
| Object # | Preceding Object Conversion Approach |
|---|---|
| Material Master | Material Master Basic and Sales View |
| Business Partner | Business Partner Basic and Sales View |
Error Handling
| Error Type | Error Description | Action Taken |
|---|---|---|
| Invalid Condition contract Type | Condition contract type not found or not configured in target S/4HANA system | Validated against configuration; corrected or replaced with valid condition contract type |
| Invalid Condition Type | Condition contract type not found or not configured in target S/4HANA system | Validated against configuration; corrected or replaced with valid KSCHL |
| Missing Key Fields | One or more key fields (e.g., VKORG, MATNR, KUNNR) are blank or incorrectly formatted when required as per the selected Key Combination | Populated missing values; ensured format (e.g., leading zeros for KUNNR/MATNR) |
| Invalid Date Range | Valid From (DATAB) is after Valid To (DATBI) | Corrected the date range to ensure DATAB < DATBI and in required date format |
| Duplicate Records | Identical key combinations found more than once in the load file | Duplicates removed or merged as per business rule. Aligned with Business and documented for future loads |
| Unmapped Values | Values for fields like UoM (KMEIN), Currency (KONWA), etc. not mapped in Syniti | Updated mapping tables; ensured value conversion aligned with S/4HANA settings |
| Invalid Currency Format | Incorrect currency formatting or unsupported currency code | Standardized to valid ISO currency codes (e.g., USD, EUR, JPY) |
| Invalid Number Format | KBETR or KPEIN contains special characters or comma separators | Cleaned formatting; ensured decimal values used with '.' as separator |
| Authorization Errors | Lack of access to execute load in target client/system | Raised access request; obtained necessary authorizations |
| Condition Table Mismatch | Field structure in load file doesn’t match condition table in target system | Corrected the file structure to align with condition table (A4AO, etc.) |
| Transformation Miss | Required transformation logic not applied before load | Re-applied transformation rules and revalidated source-target mapping |
| Obsolete Master Data | Customer or material master data no longer exists in target system | Replaced or removed based on business input |
| Technical Load Failure | File not processed due to syntax/format error or system issue | Reviewed logs; regenerated file; re-executed load after resolving issue |
| Missing Condition Record Dependencies | Dependent records (e.g., access sequences, pricing procedures) not available | Reviewed config dependencies; coordinated with config team for correction |
Post-Load Validation
Project Team
Completeness
| Task | Action |
|---|---|
| Execute Condition contract list report T-Code WCOCOALL | Run the report transaction to review and confirm the expected condition contracts are created. |
| Duplicate Records check | Review the condition contract list using reference rebate agreement number (legacy rebate #) and ensure no duplicate condition contracts created |
| Perform technical reconciliation with database tables (e.g., KONH, KONP) | Query SAP tables and match field-level values using SE16N or custom report |
Accuracy
| Task | Action |
|---|---|
| Compare uploaded data against source file values | Validate the post load extracted data against pre-load data to ensure
|
| Review condition records | Review the and confirm all the open and valid condition records are created under each condition contract |
Business
The business team plays a vital role in validating the completeness and accuracy of data loaded into S/4HANA. Their review ensures that condition contracts, key pricing elements such as condition types, customer-material combinations, and validity dates are correctly migrated and aligned with business requirements. This validation helps identify any missing or incorrect records early, supports a smooth cutover, and ensures that rebate processes function correctly from day one in the new system.Completeness
| Task | Action |
|---|---|
| Participate in Post-Load Walkthroughs | Join scheduled validation sessions with the migration and functional teams |
| Review Loaded Condition contracts | Access the S/4HANA system (via transactions like WCOCO or custom reports) to view loaded condition contracts data |
| Check for Missing Records | Identify any missing condition contracts, condition records or key combinations that were expected but not loaded |
Accuracy
| Task | Action |
|---|---|
| Compare Against Approved Load File | Cross-check data in S/4HANA against the final business-approved load file used for migration |
| Validate Accuracy of Converted/Transformed Data | Review any transformed fields (e.g., currency conversion, unit mappings) for correctness |
| Log and Report Discrepancies | Use provided discrepancy log format or defect management tool to report any findings |
Key Assumptions
- Master Data Standard is up to date as on the date of documenting this conversion approach and data load.
- is in scope based on data design and any exception requested by business.
See also
Change log
| Change History | ||
|---|---|---|
|

