How to enable Foreign currency revaluation in Cash and bank management

When using General ledger foreign currency revaluation the revaluation transactions will be created with type Ledger for the bank accounts. This will lead to a mismatch between the Ledger bank account total and the Subledger bank account total in the company currency amounts. The bank exchanage rate adjustment functionality has been requested by several customers and already available in AX2012 for Russia, where it’s a legal requirement. Below I will show how to make it accessible in any country context in 3 steps.

1. Add your country code to the following items by modifying the property CountryRegionCodes:

  • \Menu Items\Action\BankExchAdj_RU
  • \Data Dictionary\Extended Data Types\BankExchAdjVoucher_RU
  • \Data Dictionary\Tables\BankAccountTrans\Fields:
    • AccountingCurrencyAmountCorrect_RU
    • ReportingCurrencyAmount_RU
    • ReportingCurrencyAmountCorrect_RU

Property / CountryRegionCodes

2. Modify the code by adding your country code into the appropriate lines of the following objects

  • \Data Dictionary\Tables\BankAccountTrans\Methods
    • Insert – 14
    • modifiedField – 14
    • Update – 19
  • \Classes\BankExchAdj_Ru\Methods
    • calcAndPostCurrency – 28
    • calcBalance – 12

    if (SysCountryRegionCode::isLegalEntityInCountryRegion([#isoRU, #isoDE]))

3. In Cash and bank management parameters setup a number sequence for Bank – Exchange adjustment

Cash and bank management parameters > Number sequences tab > Bank - Exchange adjustment

After that functionality appears in the Cash and bank management module under the section Periodic > Bank > Foreign currency revaluation

Cash and bank management/Periodic/Bank/Foreign currency revaluation

To post the adjustments select foreign currency revaluation parameters, such as date, currencies, bank accounts.

Select Foreign currency revaluation parameters

As a result Bank exchange rate adjustments appear in the Bank transactions form

Bank exchange rate gain/loss transaction

If you have any feedback or questions about this article please provide them in the comments below or use the stars at the top.

Disclaimer. The described code changes are for your information only. Microsoft only supports installation of the packaged hotfix, and we do not recommend that you attempt to implement similar changes without appropriate testing.