cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Influencing posting price at GR with BAPI_GOODSMVT_CREATE

heinz_lutsch
Explorer
0 Kudos
1,574

Hi there.

We are trying to influence the material price when posting a goods receipt with BAPI_GOODSMVT_CREATE.
Therefore we are using the field AMOUNT_LC of structure GOODSMVT_ITEM. 

According to it"s documentation (BAPI_EXBWR) this field can be used for

"The value of the movement is calculated automatically by the system. However, it is possible to enter an amount manually if the item is to be valuated at a different price."

But is seems this documentation is not accurate, since when we are setting a different price in structure GOODSMVT_ITEM-AMOUNT_LC only MSEG-EXBWR gets updated with this, but not MSEG-DMBTR which is the base for the valuation of the material document. 
Is it really possible to influence the price with field AMOUNT_LC in BAPI_GOODSMVT_CREATE?
Maybe someone made the same experience and has a solution for it
Somehow the documentation of  BAPI_EXBWR seems to be misleading.

Thank you very much in advance
Best regards

Heinz

View Entire Topic
Lakshmipathi
SAP Champion
SAP Champion
0 Kudos

The field AMOUNT_LC in GOODSMVT_ITEM does update MSEG-EXBWR, which is the externally entered amount. However, MSEG-DMBTR (the actual valuation amount) is not influenced by AMOUNT_LC unless specific conditions are met. So yes, you can enter a manual amount, but it won’t override the valuation price unless SAP is explicitly configured to accept it; which it typically is not in standard scenarios.

Why MSEG-DMBTR is not updated is because, SAP uses standard valuation logic based on:
- Material master price (standard or moving average)
- Purchase order price
- Valuation class and account determination
Even if you pass a custom amount via AMOUNT_LC, the system still calculates DMBTR using its internal valuation rules unless
- You use a non-valuated movement type
- You post to a non-valuated stock
- You implement a custom enhancement or BAdI

Possible Workarounds are
1. Custom Movement Type
- Create a Z-movement type that allows manual valuation
- Set valuation indicator to allow external price input
2. Enhancement via BAdI
- Use MB_DOCUMENT_BADI or MB_MIGO_BADI to override valuation logic
- Inject custom logic to set DMBTR based on EXBWR
3. Use Non-Valuated GR
- If business allows, post GR as non-valuated and handle valuation separately

Dominik_Tylczynski
SAP Champion
SAP Champion
0 Kudos
That's not entirely true. AMOUNT_LC works perfectly well and it does influence material posting valuation. It works with movement types designed to accept external value e.g. 501 or 561. Workarounds are not needed.
heinz_lutsch
Explorer
0 Kudos

Dear Lakshmipathi, dear Dominik,

thank you for your feedback.
I think the EXBWR parameter works as described in note 3546987, at least when I am checking our movements in the system with MvT 292 or 561.
My intention initially was to influence the price in a GR movement with MvT 101 with  ref to a PO with account assignment F (refurbishment order). 
I think this most probably is covered by question 6 of note 3546987. 

There is a wider Process - which we don' need to discuss here - but at least that you know the root cause of may request.
We are using the refurbishment process with subcontracting, but we do not have split valuated materials, which somehow is a prerequisite for this.
In this process there are to goods receipt postings with MvT 101.
One done by the user with transaction MIGO with reference to subcontracting PO, which includes MvT 101 (GR) and MvT 543 (consumtion of subcontracting stock). Since the PO has an account assignment F with reference  to the refurbishment order, it is consumed and the stock level is not correct.
Therefore a second automatic  GR posting is triggered by BADI_DIAD_GOODMVT_1, which adjusts the stock level.

Our problem is now, that since we don't use split valuation for materials, the amount of this two GR postings are added, that partly the refurbished materials are more expensive as new identical materials would be. First GR is valuated with the PO price (refurbishment costs) and the second one with the moving average price of the refurbished material. 

Therefor my intention was to post the second GR like free of charge in oder that the moving average price is not updated with it, but unfortunately this doesn't work.
I think I will try to raise this in a customer influence request, since split valuation is not very common. At least for small and mid sized companies.

Br Heinz

shak9828
Participant
0 Kudos

Dear Lakshmipathi,

We have a business case when we need to manually enter the amount for Goods Receipt based on Internal Order with Movement Type 101. As this is not possible by standard, we have copied Movement Type 101 to Z01. What do you mean by : 
- Create a Z-movement type that allows manual valuation -> Do you mean we should copy from 501 / 561 Movement Types?
- Set valuation indicator to allow external price input -> Do you mean by Value Update for Material Type? (SAP Customizing Implementation Guide -> Logistics - General -> Material Master -> Basic Settings -> Material Types -> Define Attributes of Material Types)

Waiting for your reply,
Thanks,
Best Regards,
Shak

shak9828
Participant
0 Kudos

--