Deriving the Translation Date from Document Date – Step by Step
The SAP folks working in SAP FI must be familiar with this concept. Just to give a brief introduction, Translation date is a date which is used to convert the foreign currency to local currency. Since the exchange rate is picked based on the translation date, it is a very critical date component. In standard SAP, translation date is automatically derived from posting date.
This document will walk you through the step by step procedure of deriving the translation date automatically from document date.
Before going any further, let us make a few terminologies clear:
BUDAT: Posting Date (date when document is posted)
BLDAT: Document Date/Invoice Date (date when document is entered/parked)
WWERT: Translation Date (date used to pick the exchange rates)
This change of date can be realized by implementation of a BADI FI_TRANS_DRIVE_WWERT. This BADI is called by function module FI_DERIVE_WWERT. Following is the step by step procedure for the same.
- Go to T-Code SE19, in the “create implementation” part and give the BADI’s name:-
2. Then, the following dialog box appears, enter the implementation name:-
3. In the next screen, give the short description.
4. Go to the interface tab and enter the name of the implementing class. (ZCL_IM_DERIVE_WWERT_BUDAT in this case). This will be a Z class that will implement that interface IF_EX_FI_TRANS_DATE_DERIVE which has one method: DERIVE_WWERT.
Here, double click on the DERIVE_WWERT method and the following editor will open where you can write your piece of code.
As per this case, the code can be like the following:-
e_wwert = i_bldat.
5. Save the code and activate it. Save and activate the BADI implementation as well.
6. Now is the time to test this. For this go to FV60/65 and enter an invoice. After enter the header details, go to the “Local Currency” tab and check the translation date. It should be same as the document date.
Hope it was useful. Please feel free to share your questions or comments if any.
Hello Former Member,
thanks for sharing!
Why not use simple FI substitution for that?
Thanks & regards
The badi is FI_TRANS_DATE_DERIVE though, not FI_TRANS_DRIVE_WWERT as is written in the text
Yes, you are right!
Please check this blog
FI_TRANS_DATE_DERIVE BADI has been implemented. After note 596103 the FM exit has been changed.
With best regards,