Material Ledgers Blog
Material Ledgers Blog
Material Ledgers Blog
FollowRSS feedLike
28 Likes 31,242 Views 17 Comments
Material Ledger/ Actual Costing is one of the complex tool provided by SAP to manage its inflows
and outflows of core manufacturing related materials in multiple currency and valuations. In this blog,
I have tried to explain this functionality in detail with example (mainly Actual Costing).
Basically Material Ledger/Actual Costing are the two separate functionalities which are inter-
dependent and are incorporated in the SAP Controlling module which are discussed below.
Actual Costing
Actual Costing is functionality provided by SAP to calculate actual prices i-e; PUP (periodic unit
price) of inventories/ valuated material including Raw Material (ROH), Semi- Finished Good (HALB)
and Finished Good (FERT). It includes all the actual prices for material in particular period.
Actual Costing Run (CKMLCP) is the month end activity, which is used to valuated the inventory in
balance sheet at actual price (PUP- Periodic Unit Price) by calculating and posting Production
variance during the month on the Material which was previously maintained at Standard Price
(calculated from CK11N) in balance sheet.
Standard costing and actual costing can run completely separate from each other without any
conflicts. The only decision to be made is, what price you use for material valuation. You can mark
and release your cost estimations from CK40N as standard price to be used during the period. After
the period is over and you run your CKMLCP you can decide in the closing entries if you want to
revalue the inventory (of last month) by the periodic unit price.
The figure below shows the process and entries for Production Variance without Material Ledger/
Actual Costing,
The figure below shows the process and entries for Production Variance with Material Ledger/ Actual
Costing,
If ML / Actual Costing is active the following Price determination setting can be done in Material
Master of material.
ML active ML not active
In S4/HANA, there are no changes in the Actual Costing process it is remain optional to client
whether to use this functionality or not as in SAP ECC.
Material Ledger
Material Ledger is a tool used to manage your inventory in multiple currencies and/ or perform
multiple inventory valuation. It allows the client to manage its inventory in three currencies which is
previously (when Material Ledger is not activated) being manged in only one currency with legal
valuation.
If multiple valuations are used ML valuates If multiple valuations are not used ML just
the materials in up to 3 valuation views with 2 store the material prices/stock values in
currencies up to 3 currencies
OR Example 2:
For each valuation view we maintain separate Version in controlling through t-code: OKEV.
Example,
With Legal Valuation, you are able to valuate your business processes similar to how you would do
that in the Company Code, using Company Code Currency. Hence your financial reporting will be
similar in Profit Center Accounting and FI.
In the Group View, you apply transfer pricing among Profit Centers at cost. Therefore, there are no
intra-company transfer profits. The only profits that arise will be with respect to non-group
companies.
With the Profit Center View, you apply transfer prices amount Profit Centers with Internal Revenue
and Internal Costs. Therefore, rather than transfer the goods at Cost, the sender PC will “sell” the
goods to the receiver PC. This differs from the Legal view, where the group valuation is more like a
intra-group transfer.
In report CKM3 for RM1, we see that the price difference between standard price maintained in RM1
material and actual price at Good receipts is separately posted and shown under Price difference.
To Create a collective order, one of the SFG must have a special procurement key 81 in its MRP/
Costing view of master data.
As, we are using External activity “PCKG” at operation 0020. So when create Production order of
any quantity the Purchase requisition for this activity type based on required quantity and standard
price got created. Then on the basis of the Purchase requisition purchase order is created and
Invoice verification MIRO is done against it.
Now the confirmation for SFG1 operation 0010 is performed. During confirmation the plan yield
based on production quantity plus BOM and activity from routing is suggested which is change
by manually entering the actual quantity and activity cost. It also suggests scrap of 2% maintained in
MRP1 view of material master.
Figure below analyzes RM1 goods issue and SFG1 Production issue for Production order in Material
price report CKM3N for RM1 and SFG1.
Now the confirmation for SFG2 operation 0010 is performed. The pertaining accounting entries and
moment types are shown in figure below,
Below is the figure to analyze RM2 goods issue and SFG2 Production issue for Production order in
Material price report CKM3N for RM2 and SFG2.
Now, we do the final confirmation for FG1 for operations “0010” and “0020” as shown in figure
below,
Material Price Analyses report CKM3 for FG1 is analyzed, as shown in the below figure,
Following are the additional reports to further analyze the FG1 Material activity, purchase price and
production variances.
After doing post good issue/ delivery where the accounting entry is generated for Cost of sales. In
Material Price analysis report CKM3 for FG, we are now able to see the impact of this sales as
shown in below figure,
Note: If costing based CO-PA is activated, we can see the document generated for delivery and
billing in Profitability Analysis by using t-code KE24 only after billing.
Actual Costing Run (CKMLCP):
Pre-requisites:
The sequence in ML/Actual Costing should always be the following:
1) Create and mark cost estimate in period 1 for period 2 (T-Code: CK11N)
With ML active, you may use CKMLCP to calculate the actual price and mark it as the further price
(but only for two periods later. Let’s say, if you do post closing for period 06 and get a periodic unit
price, this price can only be marked as future price in period 08 or later). This marked future price
can be released via ck40n, ck24, CKME.
If the company decides to go for periodic unit price every period. It is recommended to
execute CKMLCP and further processes till release of periodic unit price from period 6 to 7 with
material price determination maintain as 3 and S.
Company may decide whether or not to use the PUP (actual price) as future price. If it does not want
so, use the normal Product Cost Planning process from CK11N/ CK40N.
Case 1 (Price determination 3 & S):
If ML is active with price determination 3 and you have already performed transactions to the
material during the current period, the costing release (CK40N or CK24) of Standard price to
material is not possible.
If with ML active you use price determination 2 then you can have both standard and moving
average price (S or V) but cannot do inventory valuation at actual costing (PUP). So, if you decide to
use 2 and V then the purpose of ML would only be for parallel valuation (not for actual costing).
CKMLCP Execution:
CKMLCP is executed to calculate Period Unit Price (PUP), which basically represent average actual
cost for material or semi finished goods. Execution of CKMLCP includes the below steps:
Step 1: Selection
Execution of Selection steps identified, the list of materials for which the Periodic Unit Price
calculation need to be executed during CKMLCP. The selection step work on the below concept:
After executing the Selection step, the system will identifies all the materials for which Periodic Unit
Price should be calculated during the CKMLCP as in our case materials MAK2 RM1, MAK2 RM2
MAK2 SFG1, MAK2 SFG2 & MAK2 FG1 are selected.. The materials selected during this run are
based on following criteria,
2- It includes all the materials for which any goods movement happened during the current period or
any of the previous periods after the go-live off Material ledger in Plant
It determine the group of materials, the cost of which don`t depend on the cost of any other
materials. Generally these are externally procured materials from external vendor (not from internal
organization transfer, or purchase from some other plant of same company). Like in our case raw
materials MAK2RM1 and MAK2RM2 gets selected. These materials are considered for actual PUP
calculation at single level price determination.
All the other materials, manufacture in-house, sub-contracting, purchase from some other affiliates in
the same company are considered for multilevel price determination.
Single-level material price determination is the step in which the Periodic Unit Price (also called
PUP, Actual Price) is determined.
This step calculates actual material prices based on Costs of Procurement.
The term single-level always refers to an individual material and its procurement process (external
procurement and internal procurement like production or company transfer).
When using Actual costing, all materials are valuated with a preliminary price (standard price) that
must remain constant during a period.
Variances (price differences and exchange rate differences) arise during the period for this
preliminary valuation price.
At the end of the period, you can use the single-level price determination to assign the variances
recorded in the period for each material.
In our case the Price difference for RM1 & RM2 are calculated and production variance for SFG1,
SFG2 & FG1 are calculated.
The below figure shows the impact of single level price difference on the ending inventory of FG1.
In this step system do the PUP price calculations by considering the below prices:
1- Variance between the Standard price of raw materials with the Single level PUP calculated at
-single level price determination
3- Variance allocation performed through the actual flow of goods on actual quantity
4- Variance between inter-plant (under same company, may or may not be under the same co.
codes) transfer are also consider if any goods movement happened between these plants,
otherwise not
5- All other variances having an impact on lower level materials actual cost are consider for
calculating actual PUP for higher level materials.
The screenshots below depicts the the impact of Multi-Level Price determination on the RM1 to
SFG1 highlighted in blue circle.
The picture below shows the the effects of Multi level Price determination on SFG2 from RM2
consumption.
Finally the the variances in consumption of SFG1 & SFG2 for FG1 would be transfer to FG1 Receipt
from lower level Variances as shown in the figure below.
Step 5: Revaluation of consumption
In this step system do the revaluations of all the consumption based on the actual PUP calculated at
single level or multilevel price determination. The main purpose of this step is to bring the cost of
consumption for Good Finished to actual cost, so that the profit margins are not over or under stated.
The below image illustrates the impact of Consumption Revaluation on FG1 as the cost from non-
allocated is assigned to Revaluation of Consumption.
In this step system do the revaluations of all the Work in progress based on the actual PUP
calculated at multilevel price determination.
As in our scenario WIP is not calculated for Production Order so we skip this step.
After this the material master price control in the previous period will be changed permanent to V,
from S. But in the new period, it will still be S.
Below are Accounting entries for the analysis resulted as a result of Post Closing execution.
In above entries you see that here the activity Price variance is charge to cost center and FG
Inventory directly rather than to Cost center and Production Order. Here we don’t have to run t-code
CON2 for Revaluation of activity at actual Price.
When you mark price with CKMLCP, the future price in accounting view 1 is changed together with
the “valid from” date.
After executing this step, the PUP of current months gets updated as marked cost estimate for
coming month. For converting, the PUP of current month as standard cost of next month
autoatically, we need to activate Dynamic price release.
This Blog is aimed to give the concept and use of Material Ledger/ Actual Costing and what benefits
an organization gains from this functionality. Below are some references which are knowledge full to
readers if they want more insight of Actual Costing. Hope that this article is able to deliver what it is
destined too. It is requested from readers to please share their feedback. Your time and efforts
would be highly appreciated.
Problem:
How To Analyze Not Distributed Price Differences with Value Flow Monitor
(CKMVFM)
Link: https://blogs.sap.com/2013/02/15/how-to-analyze-not-distributed-price-differences-with-value-
flow-monitor-ckmvfm/
Problem:
How to open the MM previous periods, after the ML- Actual Costing activation, for
the creation(Plants) and entries (of Materials) on the new Plants on which ML-
Actual Costing is not active.
Link: https://answers.sap.com/questions/12900355/how-to-open-the-mm-closed-period-when-
material-led.html
Problem:
ML is Revaluing the consumption as the difference of 24,231.49/= is allocated for
% Qty which is consumed in Production. It’s not revaluing the Stock transfer
made to other Plant of Qty 505.
Link: https://answers.sap.com/questions/12547238/not-allocated-variances-in-ml-closing—
ckm3n.html
Problem:
ML Document reversal on MIRO cancellation/reversal. On reverse of MIRO,
system should also reverse ML Document and all price difference posted against
invoice. However, in CKMVFM (Value monitor flow), system is showing reversal
documents and posting differences on material which should not be done.
Link: https://answers.sap.com/questions/12900755/ml-document-reversal-on-miro-reversal.html
References:
Special thanks to Srinavasa Kasireddy
https://blogs.sap.com/2019/03/07/material-valuation-with-material-ledger/comment-page
1/#comment-453516 – By Srinavasa Kasireddy
https://blogs.sap.com/2014/05/12/automation-of-actual-costing-run-ckmlcp-in-material-ledger/
https://archive.sap.com/discussions/thread/1772674
https://archive.sap.com/discussions/thread/3346981
https://answers.sap.com/questions/12547238/not-allocated-variances-in-ml-closing—ckm3n.html