SAP S/4 HANA新变化-CO物料帐(for Ver.1610)

Material Ledger Actual Costing has been activated already in the system before the system conversion to SAP S/4HANA.

You can verify if Material Ledger Actual Costing is active for one or more plants via SAP Reference IMG / SAP Customizing Implementation Guide (transaction SPRO)

-> Controlling-> Product Cost Controlling-> Actual Costing/Material Ledger

-> Actual Costing-> Activate Actual Costing-- Activate Actual Costing

=> Checkbox 'Act.Costing' (Updating Is Active in Actual Costing)

When this checkbox is marked, this means that Material Ledger Actual Costing is active in this plant.

Technically this can be verified via database table T001W, field MGVUPD. 'X' means that Material Ledger Actual Costing is active in this plant.

In addition, the table T001W shows the link between the plant and the valuation area.


With S/4HANA the data model for material ledger data has been changed significantly, especially when actual costing is active.

The main purpose for the changed data model is:

  • Simplified Data Model
  • Simplification of Calculation Logic
  • Leverage the Strength of HANA

Business Process related information

  • Reduce complexity and improve runtime in the Material Ledger Costing Cockpit for Actual Costing
  • Example: 4 separate process steps ('Single-Level Price Determination', 'Multilevel Price Determination', 'Revaluation of Consumption', 'WIP Revaluation' ) are merged to one process step ('Settlement')4步计算合为1步
  • New 2-dimensional distribution logic to avoids rounding errors
  • Less "not-distributed" values
  • No lock conflicts caused by material movements (in current period)
  • Change of standard price for materials and activities within the period is supported

Required and Recommended Action(s)

  • It is recommended to deactivate the statistical moving average price to benefit from performance improvements (non reversible).
  • Separate currency customizing of Material Ledger (transactions OMX2 / OMX3) has become obligatory, Material Ledger is acting on a subset of the currencies defined for Financials.

There is no default Material Ledger Type 0000 anymore.

  • It is not allowed to use a ML Type that references to currency settings defined in FI or CO (flags Currency Types from FI resp. Currency Types from CO). Instead you have to define explicitly the currency and valuation types that are relevant for Material Ledger.
  • Steps to be executed: 1. Define the currency and valuation types that are relevant for Material Ledger using transaction OMX2. 2. Afterwards assign this ML Type to your valuation area using transaction OMX3.
  • Before system conversion is started, all Material Ledger costing runs, no matter if actual costing (transaction CKMLCP) or alternative valuation run (transaction CKMLCPAVR) need to be finished (e.g. step 'post closing' successfully executed, no error, no materials with status 'open'). Reason: After system conversion to SAP S/4HANA it will not be possible to do any changes on costing runs created before system conversion.
  • It is not allowed to change Material Ledger costing runs, nor to run steps of Material Ledger costing runs during the process of system conversion.
  • It is not allowed to activate or deactivate Material Ledger Actual Costing during the process of system conversion for one or more plants.


Simplified Data Model

  • Tables MLDOC and MLDOCCCS

o The new Material Ledger Document tables MLDOC and MLDOCCCS replace most former periodic tables (MLHD, MLIT, MLPP, MLPPF, MLCR, MLCRF, MLKEPH, CKMLPP, CKMLCR, MLCD, CKMLMV003, CKMLMV004, CKMLPPWIP, CKMLKEPH). For more information refer to note 2352383.

o Some of the former periodic tables are still required for the following purposes:

  • The Material Ledger Closing Document is stored in the former ML document tables (ML*)
  • Standard Price. Periodic Unit Price and Price Control are still managed in


  • Cost Component Split for Prices is still managed in tables CKMLPRKEKO and CKMLPRKEPH

o The design of tables MLDOC/ MLDOCCCS allows storing both line item and aggregated data.

o Periodic transactions (goods movements, activity confirmation, etc.) update tables MLDOC/ MLDOCCCS with line item data using the INSERT ONLY principle.

o Material Ledger Period Close creates (run-dependent) settlement records in tables MLDOC/ MLDOCCCS to store the results from Actual Costing. These records are stored under the costing run key (field Run Reference) so that they are visible only by the corresponding costing run. In this way different runs (e.g. a periodic run and an AVR) can store their results independently from each other.

o Important design changes

Single- and multilevel differences are no longer distinguished. In table

MLDOC all price/exchange rate differences are stored in fields PRD/KDM. In

table MLDOCCCS the CCS for price/exchange rate differences are stored

under the CCS types E/F (field MLCCT).

The CCS is stored in a table format using the cost component (field

ELEMENT) as additional key. This allows increasing the number of cost

components without modification.

The CCS for preliminary valuation is always stored


The table MLDOC_EXTRACT holds information about quantity and valuation changes.

Transaction based updates, like goods movements or invoice receipts, usually update tables MLDOC and MLDOC_EXTRACT in parallel. But table MLDOC_EXTRACT can be compressed. After compression, the table will contain only one entry per cost estimate number, period and currency type valuation view. Table MLDOC_EXTRACT allows fast and efficient calculation of total quantity and total value, by cumulating all records for specific cost estimate number(s). The same is true for table MLDOCCCS_EXTRACT which has been designed for holding cost component information. During period shift (transaction MMPV) the tables MLDOC_EXTRACT and MLDOCCCS_EXTRACT will be compressed automatically for periods older than previous period.

Manual compression via program FCML4H_RMLDOC_EXTRACT_COMPRESS or via function module

FCML4H_MLDOC_EXTRACT_COMPRESS is possible and recommended in case of very high number of material movements.


o Table MLRUNLIST replaces the former table CKMLMV011 (Object List for Costing Run), but has some additional functions:

 Materials and activities selected for a costing run are stored under the

corresponding run id.

 It manages the period status of materials and activities

Data Conversion

In case Material Ledger Actual Costing has been activated already in the system, in one or more valuation areas, before the system conversion to SAP S/4HANA (when the system is e.g. on release SAP ERP 6.0 or on SAP Simple Finance), the tables MLDOC, MLDOCCCS, MLDOC_EXTRACT and

MLDOCCCS_EXTRACT are filled automatically with data, during Migration Step M10: Migrate Material Ledger Master Data for the valuation areas, where Material Ledger Actual Costing has been activated. The data will be created starting from last period of previous year until the current period in the system. All material related goods movements or price changes from previous years will be converted to the MLDOC tables as if the goods movement or the price change has taken place in the last period of previos year. The data of the current year will be converted not based on single material documents or price change documents, but there will be one entry per period, per currency

type and valuation view, per category (e.g. "Receipts"), per process catregory (e.g. "Production") and per production process. Data related to ML Alternative Valuation Runs are not converted automatically during Migration Step M10.

Functional changes/improvements

Material Price Analysis (Transaction CKM3):

  • No separate view for Cost Components, but integrated in main screen
  • Flag for selection of cost components not relevant for material valuation, or only cost components relevant for material valuation; by default selection of inventory relevant cost component split
  • Display of WIP Reduction for material; by default WIP Reduction is hidden; If WIP reduction is displayed, both WIP reduction and consumption of WIP for order are shown in opposite sign in different folder.
  • Plan/Actual Comparison is removed in new CKM3
  • Technically, data are retrieved from table MLDOC, MLDOCCCS and MLDOC_EXTRACT and MLDOCCCS_EXTRACT

Remark: Data older than last period of previous year (related to the time of system conversion) cannot be displayed via transaction CKM3 because the 'old' data has not been converted to the MLDOC-tables. To show data older than last period of previous year you can use transaction CKM3OLD('Material Price Analysis') or CKM3PHOLD ('Material Price History')

ML Actual Costing Cockpit (Transaction CKMLCPAVR):

  • In the transactions CKMLCP and CKMLCPAVR, there is an additional parameter Application. This means that the application can be chosen so that it is possible to process Alternative Valuation Runs via the transaction CKMLCP and Actual Costing Runs via the transaction CKMLCPAVR.
  • In the toolbar of the transactions CKMLCP and CKMLCPAVR, there is a new button next to the Display <-> Change-Button to switch the application from Costing Run to Run Reference and back.
  • When the application is switched to Run Reference, a run reference can be created, changed or displayed. A run reference is a reference that contains all settings of an Alternative Valuation Run. It can be used when creating an Alternative Valuation Run but it is only mandatory for creating Alternative Valuation Runs for Parallel COGM. It can also be created for a single period run, for year-to-date run or for a rolling run.
  • There are 2 options for creating an AVR:

o Create a Classic AVR which is the same like before.

o Create an AVR with run reference which means the settings are taken from the run reference and cant be changed. Only the plants must be chosen.

  • Some of the programs and therefore also the steps in the section Processing have changed.

The new steps of an ML costing run are:

o Selection (program FCML4H_SELECTION)

o Preparation (program FCML4H_PREPROCESSOR)

o Settlement (program FCML4H_SETTLEMENT)

o Post Closing (program FCML4H_POST_CLOSING)

  • It is no longer possible to use delta posting runs.
  • Additionally to the status of the materials, the status of the activity types is displayed in the section Processing. The button Activity Types for displaying the activity types value flow has been removed.
  • The section Costing Results has been removed. It will be replaced by the report FCML4H_RUN_DISPLAY_MATERIALS that displays a material list with status. It will called via

the button Results in the section Processing.

  • The classical CKMLCP steps Single Level Price Determination, Multilevel Price Determination, Revaluation of Consumption and WIP Revaluation have been replaced by the new step Settlement which essentially does all cost allocations and actual price calculations. Additionally the step Preparation is required to prepare the data (e.g. reading of apportionment structures, actual activity prices, cost sequence determination).
  • A change of standard price for materials and activities within the period is now supported
  • Easier reprocessing: If a material is reprocessed by settlement the depending materials on higher costing levels which need to be reprocessed are recognized automatically
  • Consumption Price Differences (i.e. Price Differences updated in Consumption Folder) are now taken into account
  • A new 2-dimensional distribution logic avoids rounding errors. The new CKM3 will match vertically and horizontally even on level of Cost Components
  • Price Limiter Logic is accurate on level of Cost Component Split
  • Materials and Activity Types are widely treated as equivalent objects. The cost allocation logic is essentially the same. The same reports (e.g. CKM3, CKMVFM) can be used for both of them (-> to be enabled yet!)
  • Alternative Valuation Run (AVR):

o The new AVR do no longer copy the data into a separate key area. (Only the

settlement records are stored under the AVR Run Reference, see above). In

particular, the cumulation of several period is done On-the-fly.

o The former step Cumulate Data is no longer needed

o The complex rescale logic, which adjusts all materials data to a common preliminary AVR price, is no longer needed.

o All AVR can now handle WIP

o Post Closing:

  • Post Closing uses a push logic (in accordance to the new Settlement). This means that the price differences rolled from an input to the output are now posted in the closing document of the input (material/activity)
  • For activity types (and business processes) a new posting has been

introduced. See the documentation in transaction OBYC for the new

transaction key PRL:

Price differences for activity types or business processes. During settlement in

the material ledger, these price differences are posted from cost centers

(Transaction/Account Modification GBB/AUI) to the material ledger

(transaction PRL) and then further allocated to the receivers (finished



  • AVR Delta Posting Logic is not available
  • External Ending/Cumulated Inventory Valuation is currently not available
  • The BAdI CKMLAVR_SIM is currently not available
  • Material Ledger Costing Runs and Alternative Valuation Runs, which have been created before the system conversion cannot be changed nor reversed any more after the conversion to SAP S/4HANA
  • Material Ledger Valuated Quantity Structure (Transaction CKMLQS) is currently not available

原文发布于微信公众号 - SAP最佳业务实践(sztunxi)





0 条评论
登录 后参与评论




var dom = document.getElementById("container");



Linux下gdb调试C++代码: ...





Code Snippet for Media on Android

A few days ago,I have wrote down this post


聊聊spring cloud的AsyncLoadBalancerAutoConfiguration



SAP S/4 HANA新变化-MM物料管理

Co-Deployment of SAP SRM 集成SRM The functional scope of SAPSupplier Relationship...



在DataGrid中选择,确认,删除多行复选框列表 Selecting, Confirming & Deleting Mul...


CAT Vehicle Testbed 自动驾驶仿真 gps 视觉 雷达


EmguCV学习——简单算法 差分与高斯