Automatically update exchange rate field in MIR7 (INVFO-KURSF)
I'm blocked trying to find a way to automatically update the exchange rate at MIR7 time.
Actually we store an hedging rate in the sales contract (specific field) for shipment costs.
When creating shipment costs document I use an exit to replace standard exchange rate by the specific one (from sales contract). Everything works fine for budgeted costs but when we enter carrier invoice in MIR7 I also have to update exchange rate (INVFO-KURSF) with the specific rate from sales contract.
Could you give me some clue to update that field using an exit or BADI?
The process would be, when going to MIR7, user enters a currency different from company's currency (In background the system gets exchange rate from OB08 and fills in INVFO-KURSF).
User then goes to enter carrier vendor code and select shipments concerned by the invoice.
At that time, a specific program has to get specific hedging rate stored in related sales contract and replace standard rate in field INVFO-KURSF.
BADI INVOICE_UPDATE doesn't change any data.
I didn't find the way to do it with BADI_FDCB_SUBBAS04...
Thanks in advance.
For your information, I found a solution.
At time of shipment costs generation (VI01), the exchange rate used is the one entered in the associated sales order (VA02, Additionnal data B in sales order header). Shipment costs are displayed in foreign currency.
The shipment costs purchase order is created using shipment cost item currency and checkbox "Fixed rate" is ticked.
The FI doc for shipment cost accrual is then created in PO's currency and it uses the associated hedging rate to convert to company's currency.
At billing time (MIR7/MIRO), you only have to specify the currency in which you enter the carrier invoice and to call the shipment number corresponding to the received invoice. The system will then retrieve accruals with the hedging rate coming from sales order. So it’s not needed to change it manually in MIR7 anymore.