| Status | |
|---|---|
| Owner | |
| Stakeholders |
Purpose
The purpose of this document is to define the conversion approach to create conversion for Object 1080 Mixing Ratios.
Mixing Ratios are the ratios which are maintained for mixed costing. Mixing ratios are weighting factors assigned to the procurement alternatives. This weighting factor is obtained from the planning department based on the usage of the procurement alternatives during the planning year. The pre-requisites for maintaining mixing ratios are production version and production alternatives.
The document details out the field list, extraction criteria, scoping, mapping, transformation logic, generation of the pre-load file and loading of the same with respect to the object 1080 - Mixing Ratios.
Key tables and fields:
The tables mentioned below are the main tables used for Mixing Ratios in S4.
- CKMLMV001 – This table in SAP is primarily used to store Procurement Alternatives data. This table contains various fields that hold specific information or linking keys about procurement alternatives such as Procurement alternatives, object type, valuation area etc.
- CKMLMV003 – This table in SAP stores information related to mixing ratios. The table stores information of mixing ratios with reference to the procurement alternatives and production version.
Table: CKMLMV001 is the central table for defining procurement alternatives in SAP S/4HANA, which is a pre-requisite for migrating mixing ratios. The key fields of this table are:
- MATNR – The MATNR is the material number of the material for which the procurement alternative is being maintained.
- WERKS – The WERKS is the plant in which the material will be costed.
- OTYP – The OTYP (Object type) field identifies the object type e.g. “BA – Procurement Alternative”, “PR – Procurement Process”, “EB-Sales Order Stock”, “LA – Activity type” etc.
- KALNR – This field stores the procurement alternative/Process number. A procurement alternative represents one of a number of different ways of procuring a specific material. You can control the level of detail in which the procurement alternatives are represented through the controlling level. Depending on the processing category, there are single-level and multilevel procurement alternatives. For example, "purchase order" is single-level procurement and "production" is multilevel procurement.
- BTYP – The process categories differentiate between the different types of procurement or consumption of materials. For example, the process categories "production" and "purchase order" represent two different methods of procuring a material. Since different methods of procurement or consumption are handled by the SAP System in different ways, the system updates different types of data. On the basis of this data, characteristics can be derived and used to create procurement processes, procurement alternatives, and consumption alternatives. E.g. “BB-Purchase Order”, “BF-Production”, “BL-Subcontracting” etc.
- SEPZ_NAME_ND - This field helps define a user defined name for procurement alternatives / consumption alternative. This can be defined by the user using controlling levels and which can be used to identify transactions in the ML data.
Table: CKMLMV003 is the central table for defining mixing ratios in relation to procurement alternatives in SAP S/4HANA:
- MATNR – The MATNR is the material number of the material for which the procurement alternative and mixing ratio(s) are being maintained.
- WERKS – The WERKS is the plant in which the material will be costed and for which the mixing ratios will be maintained.
- KALNR_BAL – This field is a key field and stores the procurement alternative number. A procurement alternative represents one of a number of different ways of procuring a specific material. You can control the level of detail in which the procurement alternatives are represented through the controlling level. Depending on the processing category, there are single-level and multilevel procurement alternatives. For example, "purchase order" is single-level procurement and "production" is multilevel procurement.
- KALNR_IN – This field is a key field and stores the procurement process number. It is a process in Product Cost Controlling that calculates and displays the costs incurred in the process of procuring materials. A procurement process identifies such a process for one or more materials. A process can produce multiple materials simultaneously (such as when co-products are involved), while a procurement alternative represents the procurement of a single material. Depending on the process category, the procurement process can be single-level or multilevel.
- MGTYP – The Quantity structure type is a key field and it is used in costing with quantity structure. When costing, this controls if and how mixed costing is performed. The quantity structure type is used to determine which procurement alternatives will be used with what mixing ratio for the materials involved in the costing. Therefore, it determines for how long the mixing ratios are valid.
- GJAHR – The year stores the year information for which the mixing ratio is being maintained. While maintaining mixing ratios, it is important to maintain the year.
- PERIO – The period stores the period specific information for which the mixing ratio is valid.
- LOSGR_PC – The costing lot size in the material master record is usually used as a basis for costing all materials within one low-level code. If these materials (such as semi-finished products) are used in materials (such as finished products) in the next-highest low-level code, the costing results are converted to the costing lot size of the material costed (in this case, the finished product) to calculate the material costs for the finished product.
- MEINS_PC – This field displays the unit of measure in which the quantity is displayed.
- ALDAT_PC – This field displays the date with which the quantity structure is selected for the cost estimate with quantity structure.
- MISCH_VERH – This field provides the weightage to be applied to individual procurement alternative when the cost estimate is executed using the mixed cost estimate. This can be entered in equivalence numbers or percentages.
The mixing ratios can be extracted from the legacy SAP system and loaded to S4 Hana via Syniti. However, SAP has not provided a standard migration object for migration of mixing ratios and hence, for the conversion of this object, the data/details will be extracted from ECC and transformed as applicable for S4HANA in Syniti and will be loaded to S4, using LTMC or a custom program.
Conversion Scope
The scope of this document covers the approach for converting active Mixing ratios from Legacy Source Systems (ECC) into S/4HANA following the Master Data Design Standard - DD-FUN-050 Master Data Standard_1080 – Mixing ratios.
The data from legacy system includes:
- Active and valid records for Mixing ratios which are still in use/valid and have validity date is >= cutover date
The data from legacy system excludes:
- All Mixing ratio records which have a validity date in the past and are not in use in any exposure
List of source systems and approximate number of records <All plants in PF2 and WP2 for which mixing ratios have been maintained for the cutover year will be relevant for migration. This information will be available in the table CKMLMV003 in PF2 and WP2 system >
Source | Scope | Source Approx No. of Records | Target System | Target Approx No. of Records |
PF2 | Active and in use Mixing Ratio Records | 72106 for 2025 and 4168 for 11/2025 | S4HANA | XXXX |
WP2 | Active and in use Mixing Ratio Records | 14644 for 2025 and 464 for 11/2025 | S4HANA | XXXX |
Additional Information
Multi-language Requirement
None
Document Management
Not Applicable
Legal Requirement
Not Applicable
Special Requirements
Not Applicable
Target Design
The Target design of the object 1080 – Mixing Ratios is based on the MDS - DD-FUN-050 Master Data Standard_1080 – Mixing Ratios Master Data is as below
The technical design of the target for this conversion approach.
Table – CKMLMV001: Procurement Alternatives
Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
CKMLMV001 | MATNR | MATNR | Material Number | CHAR | 40 | Required |
CKMLMV001 | WERKS | WERKS_D | Plant | CHAR | 4 | Required |
CKMLMV001 | OTYP | CKML_OTYP | Object Type | CHAR | 2 | Required |
CKMLMV001 | KALNR | CKML_ALPROCNR | Procurement Alternative/Process | NUMC | 12 | Required |
CKMLMV001 | BTYP | CKML_BTYP | Process Category | CHAR | 4 | Required |
CKMLMV001 | SEPZ_NAME_ND | CKML_SEPZ_NAME | User defined name | CHAR | 30 | Optional |
Table – CKMLMV003: Process model: Receipts / mixing strategies
Table | Field | Data Element | Field Description | Data Type | Length | Requirement |
CKMLMV003 | MATNR | MATNR | Material Number | CHAR | 40 | Required |
CKMLMV003 | WERKS | WERKS_D | Plant | CHAR | 4 | Required |
CKMLMV003 | KALNR_BAL | CKML_N_BALTNR | Procurement Alternative | NUMC | 12 | Required |
CKMLMV003 | MGTYP | CKML_MGTYP | Quantity Structure Type | CHAR | 5 | Required |
CKMLMV003 | GJAHR | GJAHR | Fiscal Year | NUMC | 4 | Required |
CKMLMV003 | PERIO | POPER | Posting Period | NUMC | 3 | Optional |
CKMLMV003 | LOSGR_PC | CK_LOSGR | Lot Size | QUAN | 13 and 3 Decimals | Required |
CKMLMV003 | MEINS_PC | MEINH | Unit of Measure | UNIT | 3 | Required |
CKMLMV003 | ALDAT_PC | CK_BRDAT | Quantity Structure Date | DATS | 8 | Required |
CKMLMV003 | KALNR_IN | CKML_N_PROCNR | Procurement Process | NUMC | 12 | System Generated |
CKMLMV003 | MISCH_VERH | CK_CROSSR | Mixing Ratio | DEC | 13 and 3 Decimals | Required |
Data Cleansing
For the purpose of the Object 1080 – Mixing Ratios, it is expected that only the relevant data will be extracted to the S4 system. Data cleansing is not relevant for extraction.
Conversion Process
The generic high-level process steps for the conversion are as below:
- Extraction:
- Extract from the source systems: Apply the selection parameters and data relevancy as mentioned in this specification, from the relevant tables
- Transform
- Transform fields by applying the fields and value mapping in the Syniti
- Generate and validate Pre-load files
- Load
- Load the validated Pre-load file using LSMW or a custom program to upload the mixing ratios to S4.
Data Privacy and Sensitivity
NoneExtraction
Extraction of data from a source into S4. There are 2 possibilities:
- The data exists in the source. Syniti connects to the source system, then “extracts, transforms and loads” the data into S4. There are 3 approaches:
- Perform full data extraction from relevant tables in the source system(s).
- Perform extraction through the application layer.
- Data is loaded to the repository from the provided source system extract/report. This approach is considered if we cannot connect to the source system.
- The extraction will be based on the signed off extraction rules.
- The relevancy criteria for mixing ratios (if any) as captured in the relevancy criteria sheet will be considered.
Extraction Run Sheet
| Req # | Requirement Description | Team Responsible |
|---|---|---|
01 | All Active and valid records for mixing ratios will be migrated from WP2 and PF2. The mixing ratio should be active for the cutover year. | Syniti Team |
02 | Mixing ratios will be relevant only for materials in scope as per conv spec 2019 and plants as per conv spec 2010 | Syniti Team |
03 | Mixing ratios should be greater than "0" for them to be migrated. | Syniti Team |
Selection Screen
Not ApplicableData Collection Template (DCT)
Not ApplicableExtraction Dependencies
| Item # | Step Description | Team Responsible |
|---|---|---|
01 | Any period / year end close activities have been fully completed | Business |
02 | Active and relevant mixing ratio records have been identified | Business |
03 | Production versions and Procurement alternatives have been configured | Functional 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 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 | Ensure all the fields that require value mapping, as stipulated Mapping tables, have the latest signed-off mapping files imported into Syniti | Data team |
2 | Ensure that signed off value mappings have been maintained in the Syniti | Syniti team |
3 | Confirm the value mappings are maintained in Syniti | Data team |
4 | Ensure that the relevancy rules for extraction are signed off by all relevant business stakeholders. | Syniti/Data team |
5 | Execute transformation for the object | Syniti team |
6 | Monitor the transformation progress and ensure performance and completion is within allowed timeframe | Syniti/Data team |
7. | Generate Pre-Load reports. | Syniti team |
8. | Generate data load count. | Syniti team |
9. | Log errors as defects, if any and address resolutions. Close defects. | Syniti/Data team |
10. | Re-transform and re-validate the Pre-load reports if necessary. | Syniti/Data team |
11. | Validate the transformed file as part of pre-load validation, raise data defects or provide the pre-load sign-off. | Business |
12. | Analyse and resolve any pre-load defects logged by business. | Syniti/Data team |
13. | Repeat steps 5 to 11 if necessary | Syniti/Data team |
14. | Proceed to pre-load validations | Data team |
Transformation Rules
| Rule # | Source system | Source Table | Source Field | Source Description | Target System | Target Table | Target Field | Target Description | Transformation Logic |
|---|---|---|---|---|---|---|---|---|---|
01 | WP2 / PF2 | CKMLMV001 | MATNR | Material Number | S4 HANA | CKMLMV001 | MATNR | Material Number | From Value mapping |
02 | WP2 / PF2 | CKMLMV001 | WERKS | Plant | S4 HANA | CKMLMV001 | WERKS | Plant | From Value mapping |
03 | WP2 / PF2 | CKMLMV001 | OTYP | Object Type | S4 HANA | CKMLMV001 | OTYP | Object Type | System Generated |
04 | WP2 / PF2 | CKMLMV001 | KALNR | Procurement Alternative/Process | S4 HANA | CKMLMV001 | KALNR | Procurement Alternative/Process | From Value mapping |
05 | WP2 / PF2 | CKMLMV001 | BTYP | Process Category | S4 HANA | CKMLMV001 | BTYP | Process Category | System Generated |
06 | WP2 / PF2 | CKMLMV001 | SEPZ_NAME_ND | User defined name | S4 HANA | CKMLMV001 | SEPZ_NAME_ND | User defined name | Copy As Is |
07 | WP2 / PF2 | CKMLMV003 | MATNR | Material Number | S4 HANA | CKMLMV003 | MATNR | Material Number | From Value Mapping |
08 | WP2 / PF2 | CKMLMV003 | WERKS | Plant | S4 HANA | CKMLMV003 | WERKS | Plant | From Value mapping |
09 | WP2 / PF2 | CKMLMV003 | KALNR_BAL | Procurement Alternative | S4 HANA | CKMLMV003 | KALNR_BAL | Procurement Alternative | From Value mapping |
10 | WP2 / PF2 | CKMLMV003 | MGTYP | Quantity Structure Type | S4 HANA | CKMLMV003 | MGTYP | Quantity Structure Type | Copy As is |
11 | WP2 / PF2 | CKMLMV003 | GJAHR | Fiscal Year | S4 HANA | CKMLMV003 | GJAHR | Fiscal Year | Current Year |
12 | WP2 / PF2 | CKMLMV003 | PERIO | Posting Period | S4 HANA | CKMLMV003 | PERIO | Posting Period | Copy As Is |
13 | WP2 / PF2 | CKMLMV003 | LOSGR_PC | Lot Size | S4 HANA | CKMLMV003 | LOSGR_PC | Lot Size | Copy As is |
14 | WP2 / PF2 | CKMLMV003 | MEINS_PC | Unit of Measure | S4 HANA | CKMLMV003 | MEINS_PC | Unit of Measure | Copy As Is |
15 | WP2 / PF2 | CKMLMV003 | ALDAT_PC | Quantity Structure Date | S4 HANA | CKMLMV003 | ALDAT_PC | Quantity Structure Date | Copy As Is |
16 | WP2 / PF2 | CKMLMV003 | KALNR_IN | Procurement Process | S4 HANA | CKMLMV003 | KALNR_IN | Procurement Process | From Value Mapping |
17 | WP2 / PF2 | CKMLMV003 | MISCH_VERH | Mixing Ratio | S4 HANA | CKMLMV003 | MISCH_VERH | Mixing Ratio | Copy As Is |
Transformation Mapping
Below value mapping tables should be constructed in Syniti| Mapping Table Name | Mapping Table Description |
|---|---|
Controlling Area | Controlling area should be configured and be available in value mapping or as default if only one controlling area is being used |
Ledger | Ledger(s) should be configured and should be available. |
Version | Version should be configured and should be available. |
Production Version | Production Version should be configured and should be available |
Production Alternative | Production Alternative should be configured and should be available. |
Transformation Dependencies
List the steps that need to occur before transformation can commence| Item # | Step Description | Team Responsible |
|---|---|---|
1 | Ensure all the fields that require value mapping, as stipulated Mapping tables, have the latest signed-off mapping files imported into Syniti | Data team |
2 | Ensure that signed off value mappings have been maintained in the Syniti | Syniti team |
3 | Confirm the value mappings as maintained in the Syniti | Data team |
4 | Ensure that Signed off DCT (if any) from business has been received and maintained in Syniti | Syniti/Data team |
5 | Confirmation and signoff on the extracted values | Syniti, Data and business |
Pre-Load Validation
Project Team
The Pre Load validations are performed by Project Team
Completeness
| Task | Action |
|---|---|
Generation of | Mandatory field check.
|
Record Count | Record Count Confirm the record counts in preload summary report
Invalid Records: |
Business Confirmation | Data team after the initial validation of Pre-Load validation based on the pre agreed validation checklist To send the Pre-Load file to the Business Representatives for all plants/valuation area in scope for conversion Business Representatives to validate the pre-load file Agree with data team on the next steps for erroneous records |
Accuracy
The Pre Load validations are performed by Project Team
| Task | Action |
|---|---|
Generation of | Mandatory field check.
|
Record Count | Record Count Confirm the record counts in preload summary report
Invalid Records: |
Business Confirmation | Data team after the initial validation of Pre-Load validation based on the pre agreed validation checklist To send the Pre-Load file to the Business Representatives for all plants/valuation area in scope for conversion Business Representatives to validate the pre-load file Agree with data team on the next steps for erroneous records |
Business
Completeness
| Task | Action |
|---|---|
Check Data load register count | Business Data Owner/s to verify that the total number of relevant records to be converted as per relevancy / DCT is equal to the total number of records in the Preload file. |
Accuracy
| Task | Action |
|---|---|
Conversion accuracy | To check and validate the load files with all the transformation and mapping rules, to be signed off. |
Load
The load process includes:
- Execute the automated data load into target system using load tool or product the load file 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
- Execute the automated data load into target system using load tool or produce the load file if the loading of records to be done using LTMC cockpit object of Mixing ratios.
- Once the data is loaded to the target system, it will be extracted and prepared for Post Load Data Validation with side by side check of each fields in scope of the objects with fields to be displayed as XXXX_ECC, XXXX_S4HANA, XXXX_MATCH ( As TRUE or FALSE) with an additional column denoting fields not matching and status of loading in S/4HANA as LOADED_IN_S4HANA ( As TRUE or FALSE)
Load Run Sheet
| Item # | Step Description | Team Responsible |
|---|---|---|
1 | Go to load file and pick 5 data records, load manually without any tool. See what happens. If all okay, proceed with the next step. | Data team |
2 | Go to load file and pick 10 records and load them with the tool. No action if the previous step has fallen. If not, then continue to load 10 records with the tool. Check if everything went okay. | Data team |
3 | Proceed with the full load if steps one and two were succeed else fix the issue with records | Data team |
4 | Validate few records loaded by accessing standard transactions from S/4HNA e.g. CK94 to check the mixing ratios. | Data team |
5 | Generate post load report if step 5 is validated | Data team |
6 | Log errors as defects, if any and address resolutions. Close defects. | Data team |
7 | Resolve defects by reupload and re-generate post load reports if necessary. | Data team |
8 | Business to validate the post load files as part of post-load validation, raise data defects or provide the post-load sign-off. | Business |
9 | Repeat steps 1 to 5 if necessary. | Data team |
Load Phase and Dependencies
The load phase for this object is ideally relevant for pre-cutover Phase 4
Configuration
Below configurations must exist to facilitate the conversion of this object.
| Item # | Configuration Item |
|---|---|
01 | Controlling Area |
02 | Company code |
03 | Production Version |
04 | Production Alternatives |
Conversion Objects
| Object # | Preceding Object Conversion Approach |
|---|---|
| CNV-2010 | Materials - General Plant Data / S.Loc Data |
| CNV-2019 | Materials - Basic View |
| CNV-2012 | Materials - Accounting 1 |
| CNV-2013 | Materials - Costing 1 |
| CNV-2014 | Materials - Accounting 2 |
| CNV-2015 | Materials - Costing 2 |
Error Handling
The table below depicts some possible system errors for this data object during data load. All data load error is to be logged as defect and managed within the Defect Management
| Error Type | Error Description | Action Taken |
|---|---|---|
Procurement Alternative | Procurement Alternative not maintained | Ensure that all required procurement Alternatives are maintained |
Fiscal Year | Enter correct fiscal year | Correct fiscal year |
Production Version | Production Version not maintained | Ensure that all required Production Versions are maintained |
Post-Load Validation
Project Team
The following post load validations will be done by Project TeamCompleteness
| Task | Action |
|---|---|
Reconciliation of Record Count | Record Count - Count and check how many records were loaded vs. Records in the load file (Each mock has its own data record count) Check for logs from Load and fix erroneous records, if any. |
Accuracy
| Task | Action |
|---|---|
Check values in key fields for accuracy | Post-load reports will have the same structure as the load file and some additional columns as required to facilitate the post load validation. Leverage on tool to create a Post Load report that reports S/4HANA loaded records along with the legacy values side-by-side to allow for 100% check of all these fields in the shortest possible time. Any mismatch will be reported under the Post Load - Error report. |
Business
The following post load validations will be done by business.Completeness
| Task | Action |
|---|---|
Record Count Check | Review the record count report from the Data Team and ensure it is correct by cross-checking with the record count confirmed during Pre-load Business Validations Business may also run transaction code CK94 to cross check the Mixing Ratios |
Accuracy
| Task | Action |
|---|---|
Field Checks | Check the fields to ensure that Activity Prices have been properly maintained |
Value Check | Check the activity prices against activity types and corresponding cost centres. |
Key Assumptions
- Relevancy rules have been thoroughly validated and signed off by business.
- All relevant configurations have been maintained.