Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
Showing results for 
Search instead for 
Did you mean: 
Hi Friends!

This is a short technical blog about one table that changes lot of things in SAP S/4HANA: MLDOC.

The is a question lot of people have related to this table. In short, the question is:

"In what cases the system create records in this table and in that cases don't?"


Lot of people see SAP S/4HANA system when materials set as S/2 or V/2 in the Material Ledger create records on this table, but other people say, it does not create!. So, what is the logic or rule about it?


Indeed this is a difficult question as the information is not easy accessible. One source of info that states the response to this question is the academy training "S4F02 Management Accounting in SAP S/4HANA for SAP ERP CO Professionals".

In this post i'm going to show the guts of this topic and clarify what you can expect with a simple example and scenario. Lets begin!


0) First of all, The documentation states:

"If you activate the functionality “Actual Costing” for a plant, you will store data in the tables MLDOC and MLDOCCCS, in addition to the table ACDOCA".

OK, sounds clear, but, what does it really means?


Let's explain step by step in this  simple Scenario:

1) In the system I create 2 plants COL1 and COL2. Dummy Plants!

2) Plant COL1 and COL2 have Material Ledger active (you can see this on view V_T001KML). This is done in the controlling - Material Ledger config but also in some FI or MM SPRO paths.


ML active on plant COL1 and COL2


3) Check carefully! Only COL1 have Actual Costing on table T001-MGVUPD. COL2 don't have it active.

Actual Costing Active only in COL1


At table level, you can check table T001W field MGVUPD

Table T001


4) Next, see table MBEW. Material is V/2 (variable) on MBEW for both plants (we are not going to talk today about S/3 Materials in this blog, as they don't have mystery). The easiest key to enter MLDOC table is MBEW-KALN1.



5) To validate, I create a simple scenario. I do some GR for the materials on both plants. Numbers are:

COL2 : 49xx81 and 49xx82

COL1: 49xx83

Material Documents


6) the next step is look if they create a record on table MLDOC or not. Use the key KALN1 to access MLDOC table. You can also enter with the material number.

Select MLDOC



Here you can see, only plant COL1 create record on MLDOC. COL2 don't! This is because only COL1 have actual costing active at plant level. This is what the documentation means about having "Actual Coting Active".

MLDOC records



Dear friends!  Wish this Clarify this interesting question!!! Now you know in what cases the system create records on MLDOC and

I create the blog because i see lot of people have confusion on this. MLDOC is an important table, as this is used on reporting CDS views for Material Ledger - actual costing.


If this short blog help you, please comment! Also, follow my profile as i often publish some interesting topics.



– Ask questions about FIN Material Ledger and follow (https://answers.sap.com/tags/613822505147182106635670536063341)

– Read other FIN Material Ledger and follow (https://blogs.sap.com/tags/613822505147182106635670536063341/)



PS1. All the system images were created by me on a demo system SAP S/4HANA 2021 for educational purposes, and don't belong to a real customer.!

PS2: Plants and materials where created specially for this demo! Don't belongs to a real company.