Enterprise Resource Planning Blogs by Members
Gain new perspectives and knowledge about enterprise resource planning in blog posts from community members. Share your own comments and ERP insights today!
Showing results for 
Search instead for 
Did you mean: 
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
Moving Average price (V) Standard price (S)

Standard price (S)

Recommended for SFG FG

Price determination

2 Transaction-based

(MVA is used for valuation)

Price determination

3 Single/Multilevel

(PUP is used for Valuation in the closed period)

Recommended for FG SFG and also RM

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 allowed.

Price determination

2 Transaction-based

(Std price is used for Valuation.

MVA is used for Info purpose )

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).


Moving Average(V)

Recommended for RM

S4 HANA Simplifications for Actual Costing:

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.

Material ledger with Or without Multiple valuations

In order to used Multiple Valuations ML must be implemented.

ML with multiple valuations ML w/o multiple valuations

If multiple valuations are  used ML valuates the materials in up to 3 valuation views with 2 currencies

Example 1: 3 val : 2 curr

Legal valuation/ Comp code currency

Group valuation/ Group currency

Profit center valuation/ Group currency


Legal valuation/ Comp code currency

Group valuation/ Group currency

Profit center valuation/ Comp code currency

Example 2: 3 val : 1 curr

Legal valuation/ Comp code currency

Group valuation/ Comp code currency

Profit center valuation/ Comp code currency

If multiple valuations are not used ML just store the material prices/stock values in up to 3 currencies

Example 1:

Comp code currency

Group currency

Hard currency

Example 2:

Comp code currency

Group currency

Index based currency


Used with Multiple Valuation:

Used for parallel valuations. Material price/stock is valuated(costed through CK11N) separately and stored in the specified currency.

Used without Multiple Valuation:

Used if we want to store/display material price/stock/transactions in multiple currencies.

It is a mere translation of price/ stock into different currencies at historical exchange rate .

For each valuation view we maintain separate Version in controlling through t-code: OKEV.


Version Version Description Plan Actual Valuation View WIP/RA Variance




Legal valuation

Group valuation

Profit Ctr Valuation

Legal valuation

Group Valuation

Profit Ctr Valuation



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.

S4 HANA Simplifications for Actual Costing:

Previously in SAP ECC,

Now in SAP S4/HANA,

Material Ledger Simplifications in S4/ HANA,

Material Leger/ Actual Costing Process Flow.

Procure to Pay Cycle for RM (Raw Material):

Figure below shows the Purchase to Order cycle to procure RM1 and RM2 material at respective prices.

Accounting entry generated in FI module during transaction MIGO,

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.

Prerequisites for Production Cycle:

Now check or Run cost estimate for FG and SFG to calculate and update Standard Prices in Material Master. Also create BOM and Routing master data for FG1 (FERT).

Production Cycle for FG (Finished Good):

Now we create Production Order using CS01, as we are using Collective order processing which is a set of production orders for FG and all its SFGs.

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.

Month-End Process for Production:

Now, we calculate actual activity Prices through KSII or entered it manually through KBK6. Then we TECO the all three production order and run the settlement to calculate Production Variances for FG (FERT) and SFGs (HALB).

Below the figure showing CKM3 report analysis for FG1, SFG1 and SFG2,

Order to Cash Cycle for FG:

Now we make the sales 100 quantity of FG1. First we maintain the sales price for condition type  PR00 in VK11 and then we execute the sales order cycle for the entry of sales order to billing where the accounting invoice is generated in Finance.

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):


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)

2) Do the period shift from period 1 to 2  (T-Code: MMPV)

3) Release the Standard cost estimate (T-Code: CK40N or CK24)

4) Do ML period end closing of period 1 (T-Code: CKMLCP)

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.

Case 2 (Price determination 2 & V): 

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,

1- Materials from those plants specified at creation of CKMLCP costing run.

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

3- List of materials for which ML indicator is set to active in Material master.

4- Material with status other than not defined or new.

Step 2: Determine Sequence

In this step the system describes the sequence in which the Periodic Unit Price for all the selected materials needs to be calculated.

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.

Step 3: Single level 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.

Step 4: Multilevel price determination

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

2- Variance between Plan activity rate with Actual activity rate

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.


Step 6: WIP revaluation

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.

Step 7: Post closing

At post closing step, system do the posting of all the variances calculated during single level or multilevel price determination and do the revaluation of consumption and closing inventory, and passed the necessary entries.

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.

Step 8: Mark material price

Material ledger provides the functionality of converting the current Periodic unit Price (PUP) as standard cost of next month. This can be done via executing the Mark material price step.

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.

Material Ledger Reports to Analyze after CKMLCP

In Material Ledger, the reports CKMVFM (Value Flow Monitor for materials), CKMACD (Value flow monitor for activities) and CKMREDWIP (Value Flow monitor for reduced WIP) are available to detect incomplete value flows.

These reports can be executed after all value allocating CKMLCP steps (all steps before Post Closing).

Why the balance in price differences accounts is not zero?

  • With postings to materials with standard price control, price differences accumulate in FI.

  • In the period-end closing of the material ledger (ML), for materials that are ML active and price determination 3, the accumulated price differences can be further allocated to ending inventory or consumption.

  • Ideally, the Material Ledger can explode all price differences in this way, that is, the balance of all price difference accounts is zero in total.

  • This note describes which price difference accounts are to be looked at. It explains in which cases a balance remains on the price difference accounts after the period-end closing of the ML:

Link: https://wiki.scn.sap.com/wiki/display/ERPFI/Value+flow+monitor

The Value Flow Monitor in transaction CKMVFM: valuable information after period-end closing in Material Ledger.

Value Flow Monitor CKMVFM is the report to check all values initially posted to price difference accounts have been allocated to Consumption or to Ending Inventory after period-end closing in Material Ledger.

You use the Value Flow Monitor (transaction CKMVFM) to analyze the not distributed or not included differences.

744090 - Value Flow Monitor: Explanation and recommendations.

Explanations for the selection screen:


In the above image, select either the option to display all materials or the option to display only materials with open differences. You can use the Value Flow Monitor to analyze additional materials with price determination control 2. You cannot map the original selection options to these materials and, therefore, they are changed accordingly.

You may enter a threshold value for differences that are not distributed and/or not included. This means you can prevent the system from displaying materials, for which rounding differences occurred.If you enter only one threshold value, the transaction may display materials for which differences are below this threshold.

If you select option "Reconciliation FI with ML", the system automatically selects the relevant price difference accounts for the reconciliation of FI accounts with the Material Ledger. The program analyzes all accounts that the chart of accounts of the company code to be analyzed provides for price differences. In particular, the following account keys are provided in the standard system: 'AKO', 'AUM', 'KDM', 'KDV', 'PRD', 'PRV', 'PRY', 'UMB', 'UMD'.
Sometimes you may have to use other accounts for price differences or to control further postings to the accounts mentioned above. Take this into account in the analysis or contact us for a relevant change.

Important: The reconciliation between FI and ML only returns helpful results if you did not activate the summarization of FI documents. If special stocks are analyzed, the updating of the table ACCTIT must also be activated. If you activated a summarization of FI documents, the "Reconciliation FI with ML" option does not deliver any helpful results or does not delivery any results at all.

When you summarize FI documents, the values that are defined by the material are deleted from the relevant tables. For this reason, the information necessary for the selectable reconciliation can no longer be determined as differentiated.

The system cannot determine all of the information from the FI documents that is required for analyzing special stocks. The table ACCTIT provides the missing information. If you did not activate updating for the table ACCTIT, the differences of the special stocks are assigned to the stock material. The total of the differences for a material is then correct. However, it is not clear whether the differences are relevant for the warehouse stock or special stock.
If you do not select the "Reconciliation FI with ML" option, the updating of the table ACCTIT is not relevant.

For performance reasons, you must create an extract for each run. If you select a name, for which an extract already exists, the system overwrites this on the database.
If the saved extract data requires too many resources on your computer, you can delete it.
- Create an extract for each run - use Note 912984.

- Delete extract for the run - implement Note 999197.

Recommendations for the selection to improve the performance:

To analyze the FI accounts, all FI documents (BSEG records) of the selected time period must be read. This can result in major performance problems. The runtime and the required memory are considerably affected. Therefore, the analysis of alternative valuation runs is critical for performance.
Different procedures are recommended to work around this difficulty.
First of all, execute the transaction without analyzing the FI accounts and clarify which materials need a more detailed analysis. It is not performance-critical to execute this transaction because the BSEG records are not read in this case. Execute the transaction a second time and only analyze the materials that raise critical questions. This time, choose option "Reconciliation FI with ML". There should be no performance problems because the scope of the selected data is now much smaller.
A further option is to create a database extract in the background. This can then be used regardless of performance problems in the update run for the analysis.

To improve performance, you must implement the following notes:
1045124, 973647, 924343, 912984, 855568, 849398, 849065, 770270, 768815, 715186.

Explanations for each view:


The monitor is the "initial view" after you start the transaction.
The total of all postings without or with material reference is displayed on the selected accounts. Materials are subdivided according to price determination control 2 and 3.  The listing is sorted according to material category and plant.

The total of all FI postings relating to material on the selected accounts is displayed in the "FI balance" column.
In the "FI/ML balance" column, the system lists the differences that accumulate in the Material Ledger.
The diode in the FI column is red when the values in the columns named above differ from one another. This diode is only significant if the material status is unequal to "Price determined" or "Closing Entry reversed". The material status is apparent from the SP, MP, C columns (single-level price determined, multiple-level price determined or entered at closing). In the situations mentioned above, differences are only determined in the Material Ledger, but not yet posted in FI.

As for materials, you can go from the "Monitor" view to FI postings for a more detailed analysis. The FI postings are then sorted and totaled according to account and transaction key.
This move is also possible for postings without material reference.

Analysis "Not distributed"

The logic currently implemented in the price determination allows for a stock coverage check to take place. If the existing differences cannot be absorbed by the stock, a distorted price may be determined. Due to the price limiter logic, the differences are distributed according to stock. Differences that cannot be absorbed by the stock are determined as not distributed. You can investigate this phenomenon using the Value Flow Monitor. The price limiter quantity ("PL Quantity" column) specifies for which number of material pieces differences were determined. You can set the price limiter quantity to zero. Then all differences can be absorbed by the stock. No more non-distributed rows are created. In the "Price PB = 0" column, the newly created price is displayed.
The diode in the "VB" column specifies whether the price limiter quantity can be set to zero. If it is red, the price will be negative when you reset the price limiter quantity. If this is the case, use transaction MR22 to post a revaluation.
If the diode is green, you can delete the price limiter quantity. Then the relevant entry in the database (field CKMLPP-PBPOPO) is deleted and the material status is reset to "Quantities and Values entered". You have to execute the price determination for the material once again.
You do not have to use the stock coverage check during single-level price determination. If you implement Note 855387, you have the option to turn on the stock coverage check using the selection parameter. Then you no longer have to reset the price limiter quantity.
You can carry out the price determination without stock coverage check but with thresholds. Heavy price distortions are output as errors.
Then you can examine the relevant materials using the Value Flow Monitor and determine the price accordingly (MR22, determine price with stock coverage check, confirm distorted price).

In the "Monitor" and "Analysis not distributed" view, you can go to a detailed analysis of the non-distributed values.
The calculation of the not distributed differences that exist due to a price limiter quantity logic that is used are explained here (area of calculation). However, there may be not distributed differences that are not displayed in this area. There is no program error in these cases. For the explanation of these not distributed differences, see the other reasons listed in the related Note 908776.
In addition, for the detailed analysis of the not distributed differences, the system displays the relevant documents that caused the not distributed values (area of relevant documents). You can navigate to the source document.

Material list

A flat ALV list is delivered when all other views are executed as ALV trees. You have the option to sort or filter the data according to an ALV list or to apply functions to the values. You cannot do this on the other views. The "Material list" view does not contain any additional information, only additional options.

Real Time Problems And Business Scenarios of ML- Actual Costing.

Following are the solutions/ blogs and queries pertaining to real time issues face by organization for Material Ledger- Actual Costing.


I want to delete old variant & create new variant for Period 11 2009. or kindly suggest that It will be safe that we will run same last year variant ?? Because I suspect that variant will cost only for those material which was exist last year.

Solution: you can delete the cycle using transaction code CKMLRUNDEL : Delete Costing Run.

Link: https://answers.sap.com/questions/7094908/actual-costing--t-code-ckmlcp.html


CKMLCP - Error Message No. C+816 

First determine price (m-lvl) for input material 50000014 , valuation area 1001

Solution: It was due to some missing Actual Rates per Activity Type which causes this issue at first place. I re-executed ML Run from scratch and it worked as required.

Link: https://answers.sap.com/questions/12317172/ckmlcp---error-message-no-c816.html


How To Analyze Not Distributed Price Differences with Value Flow Monitor (CKMVFM)

Refer Note 2123418

Not Allocated price difference.

1. By-product.
You have configured by-product in your production. The main product has a special apportionment structure assigned. This apportionment structure will divide the input costs/difference according to the actual output quantities of the products received in the period. If the by-product has a receipt quantity in the period, it will receive part of the price difference.

2. Rounding.
The Not Allocated value with very small amount(comparing the total price difference) is normally caused by rounding.
The price difference is allocated according to consumption quantity. When there are several types of consumption, the sum of the allocated difference might be higher than the real allocated value.
Please check KBA 2134733 for more information.

3. Profit center valuation.
If Not Allocated price difference only happens in profit center valuation view, this should be relevant.
If the profit centers maintained in sender material and receiver material are different, system will not allocate the price difference.

4. Change of fiscal year variant.
If you changed the fiscal year variant, especially the last day of period, the existing data in quantity structure table(CKMLMV003 and CKMLMV004) might be inconsistent.
This inconsistency will cause price difference can't be allocated in multilevel price determination.

5. Plant transfer posting.
You have plant transfer postings from Plant A to Plant B. Plant transfer posting is a multi-level process in material ledger.
If you put the two plants in two different costing runs, system can't allocate the price difference.

6. Cycle.
If the cycle is with non-convergency, there can also be Not Allocated price difference.

7. Error KD560
The system is using apportionment structure to roll-up the cost. In the setting of apportionment structure, you have defined source structure. The cost elements for the sender are not maintained in the source structure. Please see more detail in KBA 1846670.

8. Migration to S/4 HANA
This only happens after you perform Material Ledger Migration into S/4 HANA release.
This is mentioned in SAP Note 2354768, that before you start migration, 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'). If you don't follow this, it could happen that in one period, there are postings both before and after the migration. If you start costing run here, it might happen that system can't distinguish the price difference correctly. So "Not Allocated" value happens.

Link: https://blogs.sap.com/2013/02/15/how-to-analyze-not-distributed-price-differences-with-value-flow-mo...


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


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


How to change the Price determination and Price Control for the Material when ML actual costing is active.

At Material Ledger production startup CKMSTART, the system automatically sets all materials to price determination control 2.
If required, you can change the price determination control using transaction CKMM.

Link: https://wiki.scn.sap.com/wiki/display/ERPFI/CKM


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


How to Update the Actual Price (PUP) of current month as Standard Price for Next Month.

I have a small doubt, after Marking Material Prices through CKMLCP do we need to following below steps of Cost Estimate Creation or not :

  • Maintaining Planned Activities for the Month?

  • Maintaining Planned Activity Rates for the Month?

  • Executing Planned Price Calculation for the Month?

Link: https://answers.sap.com/questions/12618582/mark-material-prices---ckmlcp.html


Reverse marking and cost release:

We did CKMLCP for May, all materials have done post closing, there is one finished product 120000, besides post closing, we also did mark and price release using CKME, now I want to reverse 120000 for marking and price release? which steps we need to follow? thanks

Link: https://answers.sap.com/questions/10126139/reverse-marking-and-cost-release.html


Material ledger must be configured to attend the Brazilian legislation, that establishes the total absorption for production costs to inventory and COGS.

The actual tariff must be applied to activity types used on production cost centers previously with standard price allocating the manufacturing expense price differences.

Link: https://blogs.sap.com/2016/05/12/material-ledger-configuration/


Error Message C+805 and C+712 Material Ledger CKMLCP

I have made the back dated posting after ML-Actual Costing Closure in previous period i-e; 01/2021. Now in Actual Costing Closing Run of current period i-e; 02/2021, I face error (code mention above) when i run single level price det. for period 02/2021 in CKMLCP it give me error C+805 which explains to close the previous period which is 01/2021 and for this period the status of the material is value entered.


Also the Program Report Z_ML_SET_PP_STATUS_70 is used to jump the Material to next period for ML-AC Closing.

Link: https://answers.sap.com/questions/10217355/error-message-c805-and-c712-material-ledger-ckmlcp.html


You must first allow closing entries for period 003 / 2021

Message no. C+831


You are trying to perform closing entries before closing entries were allowed.


The period-end closing in Material Ledger can only be done for the previous period. Thus, you need to close the April period before you can do the period-end closing in t-Code: CKMLCP.

Also, you can use the t-Code CKMG, as mention in below link.

Link: https://answers.sap.com/questions/12393808/you-are-not-allowed-to-execute-closing-entries-in-.html



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