Personal Insights
Material Ledger Consistency Checks: FIN_ML_CORR_RECONCILE
Before a system conversion, it is recommended that you validate the quality of the financial data in your productive SAP ERP system and resolve any identified inconsistencies. A short while ago, the only way to do this was after you had technically converted to SAP S/4HANA, leading to the need for additional conversion cycles to identify and correct the inconsistencies. Fortunately, SAP has been releasing a series of new transaction codes that can be activated in your source ERP, allowing to make the necessary correction even before your conversion project starts.
This blog post introduces the next functional area in this series, Material Ledger consistency. Already available are transaction codes to interrogate General Ledger and Asset Accounting data. The power of these programs is that even when we are in the ERP system, they perform the same types of validations that will be performed during the Data Migration in S/4HANA and are based on the new data model for Finance in S/4HANA.
In this blog post, you will read about the recently released FIN_ML_CORR_RECONCILE and FIN_ML_CORR_DISPLAY_ISSUE consistency check transaction codes for Material Ledger data analysis. These transaction codes offer only detection capabilities and do not have any self-correction functions (similar in scope to the Asset Accounting data consistency transaction codes). The new functionality will help identify ML inconsistencies, and since there is no companion tool for correcting them some of the errors may require the implementation of correction note(s)* or direct SAP Support for resolution
How to find?
FIN_ML_CORR_RECONCILE & FIN_ML_CORR_DISPLAY_ISSUE transaction codes were released for the S/4HANA 2022 release and were created specifically for S/4HANA transitions using a System Conversion process. These transaction codes check and analyze Material Ledger data and verify that all preconditions for the conversion have been met.
The FIN_ML_CORR_RECONCILE transaction code deeply analyzes Material Ledger data inconsistencies and is executed in the source ERP system prior to conversion. Failure to identify these inconsistencies may results in errors when executing the main check reports executed after conversion to S/4HANA and lead to unnecessarily prolonged project cycle times.
To start using this new functionality:
Import the following SAP note:
3129858 – Reconciliation report for Material Ledger
This note activate two new transition codes: FIN_ML_CORR_RECONCILE and FIN_ML_CORR_DISPLAY_ISSUE.
To execute the deep dive check on ML data, execute transaction code FIN_ML_CORR_RECONCILE. The initial selections screen will appear as follows:
After entering your parameters, EXECUTE the analysis.
To display the results of the ML data analysis run transaction code FIN_ML_CORR_DISPLAY_ISSUE
Output example:
How to resolve detected ML issues?
Below is the list of Material Ledger correctable errors and information on the correction strategy recommendations.
You can find the most up-to-date recommended solutions of these pre-check error codes in SAP note
**2389581 – Resolve findings of core ERP CO-PC-ACT S/4HANA pre checks for Material Ledger
Check ID from CO-PC-ACT prechecks: | Message ID and -Number from report FIN_ML_CORR_RECONCILE (see note 3129858): | Problem Description: | Solution Approach: |
NO_MARA_ERROR or NO_MARA_SKIPPABLE_ERROR |
FIN_ML_RECON 004 |
There are entries in xBEW(H) tables without corresponding entry in table MARA. The corresponding xBEW(H) entries have inventory stock and values (fields: LBKUM, SALK3, VKSAL) are filled in the xBEW(H) tables.
In order to migrate the existing inventory stock and values to the new data model in S/4HANA, it is required that a corresponding MARA entry exists. |
Option 1: If the issue is due to records with inventory stock and values in the history tables (xBEWH), use archiving object MM_HDEL. Option 2: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, the corresponding data, detected by the check, will not be migrated correctly, since you decided not to solve the inconsistencies. |
NO_T134M_ERROR or NO_T134M_SKIPPABLE_ERROR |
FIN_ML_RECON 005 |
There are entries in xBEW(H) tables without corresponding entry in table T134M. The corresponding xBEW(H) entries have inventory stock and values (fields: LBKUM, SALK3, VKSAL) are filled in the xBEW(H) tables.
In order to migrate the existing inventory stock and values to the new data model in S/4HANA, it is required that a corresponding T134M entry exists. |
Option 1: Go to transaction OMS2 and maintain a record for the corresponding material type and valuation area.
Option 2: If the corresponding material is not needed anymore, archive all Material Master records using archiving object MM_MATNR. (consists of xBEW and xBEWH).
Option 3: If the issue is due to records with inventory stock and values in the history tables (xBEWH), use archiving object MM_HDEL. Option 4: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, the corresponding data, detected by the check, will not be migrated correctly, since you decided not to solve the inconsistencies. |
NO_WERTU_ERROR or NO_WERTU_SKIPPABLE_ERROR |
FIN_ML_RECON 007 |
There are entries in xBEW(H) tables with a corresponding entry in table T134M. The WERTU field is initial. As a consequence, the inventory stock and values (fields: LBKUM, SALK3, VKSAL) should not be filled.
However, in this case LBKUM, SALK3 or VKSAL is filled with values.
As a consequence, it is not possible to migrate the inventory stock and value to the S/4HANA data model |
Option 1: Go to transaction OMS2 and set the value-updating flag for the corresponding material type and valuation area. Please check the impact on other application areas.
Option 2: If the corresponding materials are not needed anymore, archive the Material Master records using archiving object MM_MATNR. (consists of xBEW and xBEWH).
Option 3: If the issue is due to records with inventory stock and values in the history tables (xBEWH), use archiving object MM_HDEL. Option 4: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, the corresponding data, detected by the check, will not be migrated correctly, since you decided not to solve the inconsistencies. |
XBEW_INIT_PER_ERROR or XBEW_INIT_PER_SKIPPABLE_ERROR |
FIN_ML_RECON 008 |
In the xBEW table the current period (fields: LFGJA and LFMON) is initial. In addition, the xBEW or xBEWH entries have inventory stock and values (fields: LBKUM, SALK3 and VKSAL are filled). As a consequence, the corresponding xBEW and xBEWH entries cannot be migrated into the S/4HANA data model. |
Option 1: If the corresponding materials are not needed anymore, archive the Material Master records using archiving object MM_MATNR. (consists of xBEW and xBEWH). Option 2: If the corresponding materials are still needed, LFGJA and LFMON values need to be adapted (unequal initial). There is no general guidance how to achieve this. Option 3: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, the corresponding data, detected by the check, will not be migrated correctly, since you decided not to solve the inconsistencies. |
NO_CKMLHD_WERTU_SET_ERROR or NO_CKMLHD_WERTU_SET_SKIPPABLE_ERROR |
FIN_ML_RECON 009 |
Material Ledger is already active before migration to S/4HANA for the corresponding valuation area.
The corresponding xBEW(H) entry has inventory stock and values (fields: LBKUM, SALK3 and VKSAL).
If T134M-WERTU (= value-updating) is set, it is required that a corresponding CKMLHD Material Ledger entry exists.
|
Option 1: Open an incident on component FIN-MIG-ML and ask to solve the inconsistencies related to missing CKMLHD entry. Option 2: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, the corresponding data, detected by the check, will not be migrated correctly, since you decided not to solve the inconsistencies. |
XBEW_PP_CR_DIFF_CURR_PER_ERROR or XBEW_PP_CR_DIFF_CURR_PER_SKIPPABLE_ERROR or XBEW_PP_CR_DIFF_CURR_PER_WARNING |
FIN_ML_RECON 010 |
Material Ledger is already active before migration to S/4HANA for the corresponding valuation area.
For the current period, there is an inconsistency between xBEW and Material Ledger tables CKMLPP and CKMLCR related to fields LBKUM, SALK3 and VKSAL. Please note that false positives might occur, if goods movements take place during the exexution of the pre-check. You can verify the shown errors/warnings via transaction CKMC. (The newest version of SAP Note 2389565 takes care that during migration to S/4HANA 1511 or 1610, this message will be shown as a warning. Consequently, it will not stop migration.) |
Option 1: Open an incident on component FIN-MIG-ML and ask to solve the inconsistencies related to missing CKMLHD entry. Option 2: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, the corresponding data, detected by the check, will not be migrated correctly, since you decided not to solve the inconsistencies. This approach is especially recommended, if the errors are false positives due to parallel goods movements. |
XBEW_PP_CR_DIFF_PREV_PER_ERROR or XBEW_PP_CR_DIFF_PREV_PER_SKIPPABLE_ERROR or XBEW_PP_CR_DIFF_PREV_PER_WARNING |
FIN_ML_RECON 011 |
Material Ledger is already active before migration to S/4HANA for the corresponding valuation area.
For the previous period, there is an inconsistency between xBEWH and Material Ledger tables CKMLPP and CKMLCR related to fields LBKUM, SALK3 and VKSAL.
Please note that false positives might occur, if goods movements take place during the exexution of the pre-check. You can verify the shown errors/warnings via transaction CKMC. (The newest version of SAP Note 2389565 takes care that during migration to S/4HANA 1511 or 1610, this message will be shown as a warning. Consequently, it will not stop migration.) |
Option 1: Open an incident on component FIN-MIG-ML and ask to solve the inconsistencies related to missing CKMLHD entry. Option 2: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, the corresponding data, detected by the check, will not be migrated correctly, since you decided not to solve the inconsistencies. This approach is especially recommended, if the errors are false positives due to parallel goods movements. |
XBEW_ACC_ASSIGN_MISSING_ERROR or XBEW_ACC_ASSIGN_MISSING_SKIPPABLE_ERROR |
FIN_ML_RECON 017 |
No account assignment can be determined for xBEW(H) records. In general, this is due to missing valuation class in Material Master Accounting 1 tab or missing assignment in transaction OBYC. |
Option 1: Go to transaction MM02 and enter in Accounting 1 tab a valuation class, if it is not maintained yet. If a valuation class is already maintained, check why no account can be determined via transaction OBYC for business transaction ‘BSX’ and the corresponding chart of accounts. – MBEW: Valuation class – EBEW: VC: Sales order stk – QBEW: Proj. stk val. class Option 2: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, the corresponding data, detected by the check, will not be migrated correctly, since you decided not to solve the inconsistencies. This approach is especially recommended, if the errors are false positives due to parallel goods movements. |
XBEW_DUPLICATE_KALN1_ERROR | FIN_ML_RECON 018 |
It is required that the KALN1 field is unique in all inventory valuation tables (MBEW, EBEW, QBEW, OBEW). The pre-check identifies cases, where this condition is not fulfilled. Duplicates need to be cleaned up, otherwise table CKMLHD cannot be filled correctly during conversion (Tabe key issue). |
see SAP Support Note 2448126 – SAP ERP Business Suite: Duplicate KALN1s in xBEW tables This not provides correction program MLHELP_XBEW_KALN1_DUPLICATES Implement note 2901374 and open an incident on component FIN-MIG-ML. Correction program MLHELP_XBEW_KALN1_DUPLICATES needs to be executed by SAP Support Team. |
DIFF_CURTP_SAME_BUKRS_ERROR | FIN_ML_RECON 019 | Material Ledger has been active before S/4HANA and there are several valuation areas assigned to one company code. However, the currency and valuation types (defined via Material Ledger type) differ within a company code. | Open an incident on component FIN-MIG-ML. |
ACT_COST_MARV_LATER_PPCR_ERROR | FIN_ML_RECON 020 | Material Ledger and Actual Costing is active in the source system. There are CKMLPP and CKMLCR records with periods (fields: POPER and BDATJ) later than current period in MARV table. | Run MM period shift via transaction MMPV and take care that current MARV period is not older than CKMLPP and CKMLCR records. |
NO_T134M_WARNING | FIN_ML_RECON 006 |
There are entries in xBEW(H) tables without corresponding entry in table T134M. The corresponding xBEW(H) entries have no inventory stock and values (fields: LBKUM, SALK3, VKSAL) are initial in the xBEW(H) tables.
Consequently, no data needs to be migrated into the S/4HANA data model.
However, if you plan to use the materials in the future, corresponding T134M entries need to be created (Same behavior as in the SAP ERP Business Suite). This can be done after migration to S/4HANA. |
Option 1: If the affected xBEW(H) records are not needed at the moment, nothing has to be done.
Option 2: Go to transaction OMS2 and maintain a record for the corresponding material type and valuation area.
Option 3: If the corresponding materials are not needed anymore, archive the Material Master records using archiving object MM_MATNR. (consists of xBEW and xBEWH).
|
XBEW_NO_MARV_ENTRY_WARNING or NO_MARV_ENTRY_ERROR |
FIN_ML_RECON 012 | No MARV (Material Master control) table entry exists for a company code. |
Go to transaction OMSY and maintain the initial period for the corresponding company code. Afterwards, a corresponding MARV table entry should be created.
|
MARV_CURR_PER_INIT_ERROR | FIN_ML_RECON 013 | MARV (Material Master control) table entry exists for a company code, however the current period is not maintained. | Go to transaction OMSY and maintain the initial period for the corresponding company code. |
ACT_COST_RUN_UNFINISHED_SKIPPABLE or ACT_COST_RUN_UNFINISHED_WARNING or ACT_COST_RUN_UNFINISHED_SKIPPABLE_ERROR |
FIN_ML_RECON 014 |
Please note that this message is only relevant for migration to S/4HANA 1610 or higher. It is not relevant for migration to S/4HANA 1511. Material Ledger and Actual Costing is already active before migration to S/4HANA for the corresponding valuation area. In order to migrate to S/4HANA 1610 or higher, it is required to complete your unfinished Actual Costing runs. |
Option 1: Go to transaction CKMLCP and complete your unfinished Actual Costing runs. Option 2: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, it will not be possible anymore to complete unfinished Actual Costing runs after migration. |
ACT_COST_CCS_CHANGED_WARNING or ACT_COST_CCS_CHANGED_SKIPPABLE_ERROR |
FIN_ML_RECON 015 |
Please note that this message is only relevant for migration to S/4HANA 1610 or higher. It is not relevant for migration to S/4HANA 1511. Material Ledger and Actual Costing is active in the source system. Cost Component Structure has been changed in the past. This can lead to inconsistent cost component split data, because migration will only use the current Cost Component Structure (even for historic records which had been assigned to different Cost Component Structure). |
Option 1: Open an incident on component FIN-MIG-ML. Option 2: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. Please note that this can lead to inconsistent cost component split data, because migration will only use the current Cost Component Structure (even for historic records which had been assigned to different Cost Component Structure). |
CKMLPP_MLCD_MEINS_INCON_SKIPPABLE or CKMLPP_MLCD_MEINS |
FIN_ML_RECON 016 |
Please note that this message is only relevant for migration to S/4HANA 1610 or higher. It is not relevant for migration to S/4HANA 1511. Material Ledger and Actual Costing is active in the source system. There is a missmatch in the Base Unit of Measure for a material. (CKMLPP-MEINS <> MLCD-MEINS). As both tables are the source for converting data to new table MLDOC this can lead to issues after system conversion, e.g. in case a material ledger costing run (transaction CKMLCP) should be created for the material in a period with inconsistent Unit of Measure. |
Option 1: Issue can be ignored and skipped, if SAP-Support Note 3015898 ( Ambiguous Quantity Unit for Material in table MLDOC (MLDOC_EXTRACT)) is implemented in the target system or part of the corresponding support package, in the moment of executing conversion (transaction FINS_MIG_STATUS, step M10) Option 2: Implement note 2901374 (Unit of Measure values inconsistencies in SI-Check). Execute the correction report ZMLHELP_SET_MEINS . The program ZMLHELP_SET_MEINS adjusts only the values of Unit of Measures. No unit conversion of historical data will be done. |
NO_T001_SKIPPABLE_ERROR | FIN_ML_RECON 023 |
There are entries in table T001K without corresponding entry in table T001. In order to migrate the existing inventory stock and values to the new data model in S/4HANA, it is required that a corresponding T001 entry exists. |
Go to transaction OX18 and maintain the inconsistent table entries. If they are not needed any longer, delete the inconsistent entries. |
NO_T001W_ENTRY_SKIPPABLE_ERROR | FIN_ML_RECON 024 |
There are entries in table T001K without corresponding entry in table T001W. In order to migrate the existing inventory stock and values to the new data model in S/4HANA, it is required that a corresponding T001W entry exists. |
Make sure that the plant was specified correctly. If required maintain the missing data in Customizing. For more details refer to KBA note 1754880. |
CKMLHD_DUPLICATE_SKIPPABLE_ERROR | FIN_ML_RECON 021 | Duplicate entries exists in table CKMLHD for existing XBEW(H) records. ( e.g. one MM records, two Material Ledger records). |
Option 1: Open an incident on component FIN-MIG-ML. Option 2: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, the corresponding data, detected by the check, will not be migrated correctly, since you decided not to solve the inconsistencies. |
CKMLHD_NO_XBEW_SKIPPABLE_ERROR | FIN_ML_RECON 022 | Entries exists in table CKMLHD with missing correspondent entry in XBEW(H) tables. ( e.g. One Material Ledger record, no MM records). |
Option 1: Open an incident on component FIN-MIG-ML. Option 2: During migration to S/4HANA 1709 or higher, it is possible to skip this kind of error via the pre-check framework. As a consequence, the corresponding data, detected by the check, will not be migrated correctly, since you decided not to solve the inconsistencies. |
In summary, Material Ledger data needs to be analyzed for inconsistencies and corrected in the source ECC system. This prepares your source system for a successful System Conversion to S/4HANA.
In this blog post you can learn about new transaction codes that will help with those activities and guide you during the process.
Hopefully this is helpful, please add in the comment section any other topics you think are valuable to have included in this blog post.
– Brought to you by the S/4HANA RIG –
Excellent blog. Thank you for putting this together.
Nice Blog. Well explanations.
Excelente trabajo, gracias por compartir.