| Status | Approved |
|---|---|
| Owner | |
| Stakeholders |
Purpose
The purpose of this document is to define the conversion approach to upload Materials - Classification and Characteristic Assignment in S/4 HANA as part of the Material Data Migration.
Link to MDS: DD-FUN-050 Master Data Standard_2023-Materials - Classification and Characteristic Assignment
Conversion Scope
The scope of this document covers the approach for converting active Values data, linked to Materials and Characteristics of Class Type 001, from Legacy Source Systems into S/4HANA following the Material Master Data Design Standard.
This object is migrated after Material Basic Data, therefore only materials in scope for the object "2019 - Materials Basic Data View" are in scope for this object. Click here to go to the Conversion Spec for 2019 to see the full set of relevancy rules.
| Source | Scope | Source Approx No. of Records | Target System | Target Approx No. of Records |
|---|---|---|---|---|
| DCT | Linking Materials (2019 - Materials Basic Data View) to Classes (2017 Material - Class Type 001) | Materials: 260,000 ** ** As per Material relevancy criteria | S4H | 197,141 ** ** This will change based on the Material Deduplication Process |
| DCT | Materials & Characteristics to Values assignment This will include Non-Survivor Duplicates of the Deduplicate process (covering Materials and Services), as well as the BAAN data in the material Classification data on WP2. | Materials: 260,000 ** ** This will change based on the Material Deduplication Process | S4H | 2 Million |
Predecessor Object
2018 Materials - Characteristics of Class Type 001 → 2017 Materials - Class Type 001 → 2023 Materials - Classification and Characteristic Assignment.
2019 Materials - Basic Data View ↗
Additional Information
Multi-language Requirement
Not Applicable
Document Management
Not Applicable
Legal Requirement
Not Applicable
Special Requirements
Not Applicable
Target Design
As per MDS. This is for reference, see below for the actual requirement.
| Table | Field | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|
| MARA | MATNR | Material Number | CHAR | 18 | Required |
| KLAH | KLART | Class type | CHAR | 3 | Required |
| KLAH | CLASS | Class | CHAR | 18 | Required |
| KSSK | STDCL | Indicator: Standard Class | CHAR | 1 | System |
| KSSK | STATU | Classification status | CHAR | 1 | System |
| KSSK | ZAEHL | Sort position | INT2 | 5 | System |
| CABNT | ATBEZ | Characteristic Description | CHAR | 30 | System |
| AUSP | ATWRT | Characteristic Value | - | - | Required |
The technical design of the target for this conversion approach.
| Table | Field | Field Description | Data Type | Length | Requirement |
|---|---|---|---|---|---|
| MARA | MATNR | Material Number | CHAR | 18 | Required |
| MARA | MTART | Material Type | CHAR | 4 | Required |
| Table | Field | Field Description | Data Type | Length | Requirement |
| KLAH | CLINT | Internal Class Number | NUMC | 10 | Required |
| KLAH | CLASS | Class Name | CHAR | 18 | Required |
| Table | Field | Field Description | Data Type | Length | Requirement |
| CABN | ATINN | Internal Characteristic | NUMC | 10 | Required |
| CABN | ATNAM | Characteristic Name | CHAR | 30 | Required |
| Table | Field | Field Description | Data Type | Length | Requirement |
CAWN | ATINN | Internal characteristic | NUMC | 10 | Required |
CAWN | ATZHL | Int Counter | NUMC | 4 | Required |
CAWN | ATWRT | Value | CHAR | 70 | Required |
CAWN | ATSTD | Default Value | CHAR | 1 | Conditional |
| Table | Field | Field Description | Data Type | Length | Requirement |
| KSSK | OBJEK | Key of Object to be Classified | CHAR | 90 | Required |
| KSSK | MAFID | Indicator: Object/Class | CHAR | 1 | Required |
| KSSK | KLART | Class Type | CHAR | 3 | Required |
| KSSK | CLINT | Internal Class Number | NUMC | 10 | Required |
| KSSK | STDCL | Indicator: Standard Class | CHAR | 1 | System |
| KSSK | STATU | Classification Status | CHAR | 1 | System |
| KSSK | ZAEHL | Sort Position | INT2 | 5 | System |
| Table | Field | Field Description | Data Type | Length | Requirement |
| AUSP | OBJEK | Key of Object to be Classified | CHAR | 90 | Required |
| AUSP | ATINN | Internal Characteristic | NUMC | 10 | Required |
| AUSP | ATZHL | Characteristic Value Counter | NUMC | 3 | Required |
| AUSP | MAFID | Indicator: Object/Class | CHAR | 1 | Required |
| AUSP | KLART | Class Type | CHAR | 3 | Required |
| AUSP | ATWRT | Characteristic Value | CHAR | 70 | Required |
Data Cleansing
| ID | Criticality | Error Message/Report Description | Rule | Output | Source System | Syniti Report Required |
|---|---|---|---|---|---|---|
| 1 | High | A Load File needs to be generated to be uploaded into the DCT Rules for Materials & Characteristics to Values assignment (DCT.AUSP). This file will contain the non-survivor duplicate Material/Service Numbers and Descriptions as well as the BAAN Numbers and Descriptions that now nee to go into the Characteristics of the Survivor material. See row 1219 in Conversion Specification - Validation Reports. | See DCT.AUSP | See DCT.AUSP | WP2 | Yes |
| ||||||
| 3 | Medium | Invalid Characteristic Values in the AUSP_* DCTs. | Only Characteristic Values as per S4H.CAWN-ATINN and S4H.CAWN-ATWRT. A Blank Value in the is allowed even if it is not in S4H.CAWN-ATWRT. | List of records that have invalid Values (ATWRT). | DCT.AUSP_* | Yes |
Conversion Process
The high-level process, where there is no source data, is represented by the diagram below:
The high-level process for Materials, where the source is PF2 & WP2, is represented by the diagram below:
Field Governance Rules | |||||
These governance rules apply to the individual fields within the data record. | |||||
Rule # | Field Label | Rule Description | Validation Method | Conditional Logic | Cleansing Rule (Also see Data Cleansing section above) |
1 | KLART | Class Type = '001' | Upfront Automated | ||
Data Privacy and Sensitivity
Not Applicable
Extraction
The source for assigning Materials to Classes is a File that will be uploaded into the DCT (see below in the DCT section for more details) and is based on a mapping of Material Type to Class.
For assigning Materials & Characteristics to Values, the source is a DCT.
Extraction Run Sheet
| Req # | Requirement Description | Team Responsible |
|---|---|---|
1 | Extract data from source system based on relevancy rules. | Syniti |
2 | Extract data from the DCTs. | Syniti |
Selection Screen
| Selection Ref Screen | Parameter Name | Selection Type | Requirement | Value to be entered/set |
|---|---|---|---|---|
| Not Applicable |
Data Collection Template (DCT)
Target Ready Data Collection Template will be created for Materials - Classification and Characteristic Assignment data with the fields requiring transformation as mentioned in the transformation rule.DCT Rules for linking Materials to Classes (DCT.KSSK)**:
| Field Name | Field Description | Rule | Tool Tip | zComment | zDelete |
|---|---|---|---|---|---|
| MTART | Material Type | Mandatory. Use drop-down based on S4H.T134. | Key that groups materials, e.g. raw materials, finished products or trading goods. | ||
| CLASS | Class Name | Mandatory. Use drop-down based on S4H.KLAH-CLASS. | Name used to uniquely identify a class within a class type. | ||
| KLART | Class Type | Read-only. Default to "001". |
**Load File: 2023-Material Type to Class Load File.xlsx
DCT Rules for Materials & Characteristics to Values assignment for all S4H Material Types Except ZDIR (DCT.AUSP_MTART):
| Field Name | Field Description | Rule | Tool Tip | zComment | zDelete |
|---|---|---|---|---|---|
| OBJEK | Material Number | Mandatory & read-only. | The Legacy Material Number will be used to identify the corresponding Target Material Number. | ||
| CLASS | Class Name | Mandatory & read-only. This will be pre-populated based on DCT.KSSK-CLASS. | Name used to uniquely identify a class within a class type. | ||
| KLART | Class Type | Read-only. Default to "001". | |||
| ATNAM | Characteristic Name | Mandatory & read-only. This will be pre-populated based on DCT.KSML-ATNAM (CNV_2018) WHERE DCT.KSML-CLASS = DCT.AUSP_MTART-CLASS. The following Characteristics must be excluded from the dropdown because they will be migrated separately: Z_SY_MAT_OLD_PART_NUMBER and Z_SY_MAT_OLD_PART_DESCRIPTION. | Unique technical name identifying the characteristic (e.g. LENGTH, COLOR). | ||
| ATWRT | Value | Blank is allowed. | List of permissible predefined characteristic values (e.g. RED, BLUE, GREEN). |
DCT Rules for Materials & Characteristics to Values assignment for S4H Material Type ZDIR (DCT.AUSP_ZDIR)**:
| Field Name | Field Description | Rule | Tool Tip | zComment | zDelete |
|---|---|---|---|---|---|
| MTART | Material Type | Default to 'ZDIR'. | Proposed Material Type. | ||
| OBJEK | Material Number | Mandatory & read-only. This will be pre-populated based on Material_XREF-AS_IS_SURVIVOR_MATNR (I am assuming this also holds the unique materials that had no duplicates) from PF2.MARA-MATNR and WP2.MARA-MATNR | This is the Material that has been selected from a group of duplicates to be migrated to S4H (The Survivor) as well as the unique materials that had no duplicates. The Legacy Material Number will be used to identify the corresponding Target Material Number. | ||
| CLASS | Class Name | Mandatory & read-only. This will be pre-populated based on DCT.KSSK-CLASS = ZSY_MFG_CLASS. | Name used to uniquely identify a class within a class type. | ||
| KLART | Class Type | Read-only. Default to "001". | |||
| ATNAM | Characteristic Name | Mandatory & read-only. This will be pre-populated based on DCT.KSML-ATNAM (CNV_2018) WHERE DCT.KSML-CLASS = DCT.AUSP_ZDIR-CLASS. The following Characteristics must be excluded from the dropdown because they will be migrated separately: Z_SY_MAT_OLD_PART_NUMBER and Z_SY_MAT_OLD_PART_DESCRIPTION. | Unique technical name identifying the characteristic (e.g. LENGTH, COLOR). | ||
| ATWRT | Value | Blank is allowed. | List of permissible predefined characteristic values (e.g. RED, BLUE, GREEN). |
** A Load File must be generated to load data into the DCT along with to be verified by the users. The users will also add other data into the DCT. The below is a guide only.
/* WP2 Z_CM_MAT Select Statement */
/* This data will come from WP2.AUSP, the Class Z_CM_MAT and from the Characteristics that were used to create the S4H Characteristics as per CNV-2018, i.e. in the mapping file AS-IS to TO-BE Characteristic Name Mapping, (called AS_IS_TO_BE_ATNAM_MAP below). This will NOT include the BAAN Number and Description because this is done in the Transformation section. */
SELECT mx.AS_IS_SURVIVOR_MATNR AS OBJEK, 'ZSY_MFG_CLASS' AS CLASS, am.TO_BE_ATNAM AS ATNAM, au.ATWRT
FROM WP2.AUSP AS au
INNER JOIN Material_XREF AS mx ON au.OBJEK = mx.AS_IS_SURVIVOR_MATNR
INNER JOIN Material_Type_XREF AS mtx ON au.OBJEK = mtx.AS_IS_MATNR AND mtx.TO_BE_MTART = 'ZDIR'
INNER JOIN WP2.CABN AS ca ON au.ATINN = ca.ATINN
INNER JOIN AS_IS_TO_BE_ATNAM_MAP AS am ON ca.ATNAM = am.AS_IS_ATNAM AND am.AS_IS_ATNAM NOT IN('Z_CM_MAT_OLD_PART_NUMBER','Z_SY_MAT_OLD_PART_DESCRIPTION')
WHERE au.KLART = '001'
Extraction Dependencies
| Item # | Step Description | Team Responsible |
|---|---|---|
1 | Data relevancy and deduplication of legacy Material data must be completed. | Syniti & S2P Data Team |
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 ADMM 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 ADMM.
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 | Verify that Material data is extracted from both source systems. | Syniti / S2P Data Team |
2 | Verify that data has been loaded into the DCTs. | Syniti / S2P Data Team |
3 | Transformation jobs are ready for execution. | Syniti |
4 | Generate Load Files | Syniti |
Transformation Rules
Transformation Rules for linking Materials to Classes:
Rule # | Source system | Source Table | Source Field | Source Description | Target System | Target Table | Target Field | Target Description | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|
1 | S4H | MARA | MATNR | Material Number | S4H | KSSK | OBJEK | Key of Object to be Classified | WHERE DCT.KSSK-MTART = S4H.MARA-MTART |
2 | S4H | KSSK | MAFID | Indicator: Object/Class | Default to "O" | ||||
3 | S4H | KSSK | KLART | Class Type | Default to "001" | ||||
4 | DCT | KSSK | CLASS | Class Name | S4H | KSSK | CLINT | Internal Class Number | Copy S4H.KLAH-CLINT WHERE DCT.KSSK-CLASS = S4H.KLAH-CLASS |
5 | S4H | KSSK | STDCL | Indicator: Standard Class | Default to "X" | ||||
6 | S4H | KSSK | STATU | Classification Status | Default to "1" | ||||
7 | S4H | KSSK | ZAEHL | Sort Position | Default to 10 |
Transformation Rules for Materials & Characteristics to Values assignment**:
Rule # | Source system | Source Table | Source Field | Source Description | Target System | Target Table | Target Field | Target Description | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|
1 | DCT.AUSP_MTART, DCT.AUST_ZDIR & "Old Material Load File" | AUSP | OBJEK | Material Number | S4H | AUSP | OBJEK | Key of Object to be Classified | Copy Material_XREF-[TO-BE_MATNR] WHERE Material_XREF-[AS-IS_SURVIVOR_MATNR] = DCT.AUSP-OBJEK |
2 | DCT.AUSP_MTART, DCT.AUST_ZDIR & "Old Material Load File" | AUSP | ATNAM | Characteristic Name | S4H | AUSP | ATINN | Internal Characteristic | Copy S4H.CABN-ATINN WHERE DCT.AUSP-ATNAM = S4H.CABN-ATNAM. |
3 | S4H | AUSP | ATZHL | Characteristic Value Counter | For Z_SY_MAT_OLD_PART_NUMBER and Z_SY_MAT_OLD_PART_DESCRIPTION use the Counter as described below in ** else Default to 1 | ||||
4 | S4H | AUSP | MAFID | Indicator: Object/Class | Default to "O" | ||||
5 | S4H | AUSP | KLART | Class Type | Default to "001" | ||||
6 | DCT.AUSP_MTART, DCT.AUST_ZDIR & "Old Material Load File" | AUSP | ATWRT | Value | S4H | AUSP | ATWRT | Characteristic Value | WHERE (Material_XREF-[AS-IS_SURVIVOR_MATNR] = DCT.AUSP-OBJEK) AND (S4H.MARA-MATNR = Material_XREF-[TO-BE_MATNR]) |
/* Old Material Load File */
/* During the deduplication process duplicate materials/services were identified. The non-survivor duplicate Material/Service Number and Description must go into the Characteristics of the Survivor material. Please remove the leading zeros from the duplicate Material/Service Number that goes into the Values field ATWRT. */
SELECT AS_IS_SURVIVOR_MATNR as OBJEK, 'Z_SY_MAT_OLD_PART_NUMBER' AS ATNAM, AS_IS_NON_SURVIVOR_DUP_MATNR as ATWRT CONCAT(COUNTER_MATNR, '-', AS_IS_NON_SURVIVOR_DUP_MATNR) as ATWRT
FROM Material_XREF
WHERE AS_IS_NON_SURVIVOR_DUP_MATNR IS NOT NULL
UNION
/* Following from above, this is for the Material/Service Description. */
SELECT mx.AS_IS_SURVIVOR_MATNR as OBJEK, 'Z_SY_MAT_OLD_PART_DESCRIPTION' AS ATNAM, mk.MAKTX as ATWRT CONCAT(COUNTER_MAKTX, '-'. mk.MAKTX) as ATWRT
FROM Material_XREF AS mx
INNER JOIN ECC.MATK as mk on mx.AS_IS_NON_SURVIVOR_DUP_MATNR = mk.MATNR AND mk.SPRAS = 'E'
WHERE AS_IS_NON_SURVIVOR_DUP_MATNR IS NOT NULL
UNION
/* Following from above we now need to get the BAAN Number for the Survivor of the Deduplication process. */
SELECT mx.AS_IS_SURVIVOR_MATNR AS OBJEK, 'Z_SY_MAT_OLD_PART_NUMBER' as ATNAM, au.ATWRT CONCAT(COUNTER_MATNR, '-'. au.ATWRT) as ATWRT
FROM WP2.AUSP AS au
INNER JOIN Material_XREF AS mx ON au.OBJEK = (mx.AS_IS_SURVIVOR_MATNR OR mx.AS_IS_NON_SURVIVOR_DUP_MATNR)
WHERE au.KLART = '001' AND au.ATINN = '0000009944'
UNION
/* Following from above we now need to get the BAAN Description for the Survivor of the Deduplication process. */
SELECT mx.AS_IS_SURVIVOR_MATNR AS OBJEK, 'Z_SY_MAT_OLD_PART_DESCRIPTION' as ATNAM, au.ATWRT CONCAT(COUNTER_MAKTX, '-'. au.ATWRT) as ATWRT
FROM WP2.AUSP AS au
INNER JOIN Material_XREF AS mx ON au.OBJEK = (mx.AS_IS_SURVIVOR_MATNR OR mx.AS_IS_NON_SURVIVOR_DUP_MATNR)
WHERE au.KLART = '001' AND au.ATINN = '0000009943'
/*
New requirement in CR0320.
Following from the above the Old Material Number (MARA-BISMT) of the Survivor as well as its Duplicates must go into the Characteristics of the Survivor. Note the following:
1) For all non-ZDIR To-Be Material Types this needs to be done.
2) For non-Composites in ZDIR this needs to be done.
3) For Composites in ZDIR the majority, but probably not all, have BISMT and the Description in Characteristics. You therefore need to only do this where it is missing.
4) Use the Material's current description (MAKT-MAKTX) for the Old Part Description characteristic. This is what was done for Composites when the BAAN Material Number was originally put into the characteristics.
5) If the value in BISMT starts with either 'PF2' or 'WP2' then do not add the number and description into characteristics. This material was copied from 1 system into the other, so we will have the characteristics information from the survivor material in the original system.
6) If the value in BISMT has leading zeros, please remove them.
*/
Transformation Mapping
Mapping Table Name | Mapping Table Description | Link |
|---|---|---|
Material | XREF |
Transformation Dependencies
List the steps that need to occur before transformation can commence
Item # | Step Description | Team Responsible |
|---|---|---|
1 | Data has been extracted from sources systems | Syniti |
2 | Configuration should be completed for Classes (object 2017) and Characteristics (objects 2018). | S2P Data Team |
3 | Ensure DCT completeness | S2P Data Team |
4 | Value mapping and XREF tables are ready | Syniti & S2P Data Team |
Pre-Load Validation
Project Team
Completeness
| Task | Action |
|---|---|
Verify Record Count | The number of records presented after relevancy checks and validation, as well as the number of records in the DCT, needs to be correct compared to the staged data in Syniti ADMM. |
Completeness check | All fields required as per mapping template rules must be completed. Syniti ADMM standard validity reports checking each field in Syniti must be built. |
Accuracy
| Task | Action |
|---|---|
Conversion Accuracy | Verify that the data staged in the preload tables are correct in terms of the mapping rules. This will be done via Syniti ADMM standard reports.. |
Review Error Reports | Review and correct the errors. Achieve a zero-error record count as much as possible. Raise defects for data remediated and requiring a correction in the source data. |
Business
Completeness
| Task | Action |
|---|---|
Verify Record Count | Business should compare legacy record counts against the record count in the preload table. |
Accuracy
| Task | Action |
|---|---|
Conversion Accuracy | Business team to verify that the data staged in the preload tables are correct in terms of the mapping rules. This will be done via Syniti ADMM reports/SAP reports. |
Load
The load process includes:
- Execute the automated data load into the target system using the appropriate load tool.
- 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 | Verify data extracted | Data Specialist/Functional - S2P |
2 | Stage data for transformations | Syniti |
3 | Run transforms | Syniti |
4 | Execute pre-load report | Syniti |
5 | Validate preload report - release | Data Specialist/Functional - S2P |
6 | Prepare and simulate | Syniti |
7 | Pre-load verification and approval to load | Functional/Data Owner - S2P |
8 | Load to S4 | Syniti |
9 | Complete Jira steps, Volumes and Timings | All - where applicable |
10 | Execute post-load report | Syniti |
11 | Post-load report verification/validation | Data Specialist/Functional/Data Owner - S2P |
12 | Object load completion approval | Data Owner - S2P |
Load Phase and Dependencies
Configuration
| Item # | Configuration Item |
|---|---|
1 | TCLA-Class Types |
2 | TCLG-Class Groups |
3 | TCLU-Class Status |
Conversion Objects
| Object # | Preceding Object Conversion Approach |
|---|---|
| 1 | 2017 Materials - Class Type 001 |
| 2 | 2018 Materials - Characteristics of Class Type 001 |
| 3 | 2019 Materials - Basic Data View |
Error Handling
| Error Type | Error Description | Action Taken |
|---|---|---|
| Data | Classes, Characteristics and Values not loaded into the Target System | Add Missing data |
Data | Source Material not linked to a Target Material in the XREF | Fix incorrect data |
Data | Duplicates | Fix incorrect data |
Load | Authorization errors | Apply for the applicable authorization permission and retry |
Load | Technical load failures - If using MC - Simulation errors, etc | Investigate error and rectify. Retry simulation and/or load |
Config | Configuration is missing in the Target System | Missing config added in the Target System |
Post-Load Validation
Project Team
Post-Load Steps
| Step Description | Team Responsible |
|---|---|
Execute post-load report | Syniti |
Post-load report verification/validation | Data Specialist/Functional/Data Owner - S2P |
Object load completion approval | Data Owner - S2P |
Completeness
| Task | Action |
|---|---|
Verify Count | The number of records presented in the post-load needs to be compared to the preload – Syniti report. |
Field by field check | Compare source data staged in the preload tables to target data in the load tables. |
Accuracy
| Task | Action |
|---|---|
Verify Logs | Check if there is data that failed to load and perform the necessary actions (e.g. register as post load issue or attempt to load the record again, etc.). |
Business
Completeness
| Task | Action |
|---|---|
Verify Count | The number of records presented in the preload needs to be compared to the post-load Syniti report. |
Missing data | Check missing data which was supposed to be loaded. |
Reconciliation | Participate in Post-load walkthroughs. |
Field by field check | Perform random Field by Field checks by comparing source data staged in the preload tables to target data in the load tables. |
Accuracy
| Task | Action |
|---|---|
Conversion Accuracy | Verify that the data in S/4 HANA was loaded correctly via Syniti post-load reports. |
Key Assumptions
- Master Data Standard is up to date as on the date of documenting this conversion approach and data load.
- Materials - Classification and Characteristic Assignment is in scope based on data design.
See also
Change log
Workflow history
| Title | Last Updated By | Updated | Status | |
|---|---|---|---|---|
| There are no pages at the moment. | ||||

