---
title: "Codeunit 699 Exch. Rate Adjmt. Process"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/699-exch-rate-adjmt-process/
type: codeunit
id: 699
name: "Exch. Rate Adjmt. Process"
app: "Base Application"
namespace: Microsoft.Finance.Currency
versions: "20-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/699-exch-rate-adjmt-process/source/29/"
checked: 2026-09-20
subject: "Microsoft Dynamics 365 Business Central"
license: "Content © 2026 Jonas Paprotka. Quote freely with attribution and a link."
---

# Codeunit 699 Exch. Rate Adjmt. Process

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/699-exch-rate-adjmt-process/

| | |
| --- | --- |
| App | Base Application |
| Namespace | Microsoft.Finance.Currency |
| Versions | 20-28 |
| Source file | Finance/Currency/ExchRateAdjmtProcess.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| Preview | (var Record Exch. Rate Adjmt. Parameters) | - | public | 20-28 | - | - |
| AdjustExchRateCust | (Record Gen. Journal Line, var Record Cust. Ledger Entry) | - | public | 20-28 | - | - |
| AdjustExchRateVend | (Record Gen. Journal Line, var Record Vendor Ledger Entry) | - | public | 20-28 | - | - |
| AdjustExchRateEmpl | (Record Gen. Journal Line, var Record Employee Ledger Entry) | - | public | 24-28 | - | - |
| GetGlobalDimVal | (Code[20], var Record Dimension Set Entry) | Code[20] | public | 26-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnAfterInitDtldCustLedgerEntry | (var Record Detailed Cust. Ledg. Entry) | 20-28 | - | - |
| Integration event | OnAfterInitDtldVendLedgerEntry | (var Record Detailed Vendor Ledg. Entry) | 20-28 | - | - |
| Integration event | OnAfterSetDtldCustLedgEntryFilters | (var Record Detailed Cust. Ledg. Entry, Record Cust. Ledger Entry) | 20-28 | - | - |
| Integration event | OnAfterSetDtldVendLedgEntryFilters | (var Record Detailed Vendor Ledg. Entry, Record Vendor Ledger Entry) | 20-28 | - | - |
| Integration event | OnAfterShouldAdjustCurrency | (Record Currency, var Boolean) | 20-28 | - | - |
| Integration event | OnAfterShouldAdjustCustLedgEntry | (Record Cust. Ledger Entry, var Boolean) | 20-28 | - | - |
| Integration event | OnAfterShouldAdjustVendLedgEntry | (Record Vendor Ledger Entry, var Boolean) | 20-28 | - | - |
| Integration event | OnAdjustCustomerLedgerEntryOnBeforeInitDtldCustLedgEntry | (var Record Customer, Record Cust. Ledger Entry) | 20-28 | - | - |
| Integration event | OnAdjustCustomerLedgerEntryOnAfterPrepareAdjust | (var Record Cust. Ledger Entry, Decimal, Decimal) | 20-28 | - | - |
| Integration event | OnAdjustVendorLedgerEntryOnBeforeInitDtldVendLedgEntry | (var Record Vendor, Record Vendor Ledger Entry) | 20-28 | - | - |
| Integration event | OnAdjustVendorLedgerEntryOnAfterPrepareAdjust | (var Record Vendor Ledger Entry, Decimal, Decimal) | 20-28 | - | - |
| Integration event | OnAfterProcessCustomerAdjustment | (var Record Cust. Ledger Entry) | 20-28 | - | - |
| Integration event | OnAfterProcessVendorAdjustment | (var Record Vendor Ledger Entry) | 20-28 | - | - |
| Integration event | OnAfterRunAdjustment | (var Record Exch. Rate Adjmt. Parameters) | 20-28 | - | - |
| Integration event | OnBeforeGetBankAccountNo | (Record Bank Account, Code[20], var Boolean) | 20-23 | - | - |
| Integration event | OnBeforeGetCustAccountNo | (Record Cust. Ledger Entry, Code[20], var Boolean) | 20-23 | - | - |
| Integration event | OnBeforeGetLocalCustAccountNo | (Record Cust. Ledger Entry, var Code[20], var Boolean) | 20-28 | - | - |
| Integration event | OnBeforeGetVendAccountNo | (Record Vendor Ledger Entry, Code[20], var Boolean) | 20-23 | - | - |
| Integration event | OnBeforeGetLocalVendAccountNo | (Record Vendor Ledger Entry, var Code[20], var Boolean) | 20-28 | - | - |
| Integration event | OnBeforeGetRealizedGainsAccount | (Record Currency, var Code[20], var Boolean) | 20-28 | - | - |
| Integration event | OnBeforeGetRealizedLossesAccount | (Record Currency, var Code[20], var Boolean) | 20-28 | - | - |
| Integration event | OnBeforeGetUnrealizedGainsAccount | (Record Currency, var Code[20], var Boolean) | 20-28 | - | - |
| Integration event | OnBeforeGetUnrealizedLossesAccount | (Record Currency, var Code[20], var Boolean) | 20-28 | - | - |
| Integration event | OnPostGenJnlLineOnAfterGenJnlPostLineRun | (var Record Gen. Journal Line, var Codeunit Gen. Jnl.-Post Line) | 20-28 | - | - |
| Integration event | OnPostGenJnlLineOnBeforeGenJnlPostLineRun | (var Record Gen. Journal Line) | 20-21 | - | - |
| Integration event | OnAfterInitVariablesForSetLedgEntry | (var Record Exch. Rate Adjmt. Parameters, Record Gen. Journal Line) | 21-28 | - | - |
| Integration event | OnAfterAdjustCustomerLedgerEntryOnAfterCalcAdjmtAmount | (Record Cust. Ledger Entry, Record Exch. Rate Adjmt. Parameters, Decimal, Boolean, var Boolean) | 21-25 | - | - |
| Integration event | OnAfterAdjustVendorLedgerEntryOnAfterCalcAdjmtAmount | (Record Vendor Ledger Entry, Record Exch. Rate Adjmt. Parameters, Decimal, Boolean, var Boolean) | 21-25 | - | - |
| Integration event | OnProcessBankAccountOnAfterCalcFields | (var Record Bank Account, Record Currency) | 21-28 | - | - |
| Integration event | OnBeforeAdjustGLAccountsAndVATEntries | (var Record Exch. Rate Adjmt. Parameters, var Record Currency, var Codeunit Gen. Jnl.-Post Line) | 21-28 | - | - |
| Integration event | OnPostGenJnlLineOnBeforeGenJnlPostLineRun | (var Record Gen. Journal Line, var Record Exch. Rate Adjmt. Parameters) | 22-28 | - | - |
| Integration event | OnSetPostingDimensionsElseCase | (var Record Gen. Journal Line, var Record Dimension Set Entry) | 23-25 | - | - |
| Integration event | OnAdjustCurrencyOnAfterSetBankAccountFilters | (var Record Bank Account) | 23-28 | - | - |
| Integration event | OnAdjustCurrencyOnAfterSetBankAccountFiltersInLoop | (var Record Bank Account) | 23-28 | - | - |
| Integration event | OnPrepareTempCustLedgEntryOnAfterSetCustLedgerEntryFilters | (var Record Cust. Ledger Entry) | 23-28 | - | - |
| Integration event | OnPrepareTempCustLedgEntryOnAfterSetDtldCustLedgerEntryFilters | (var Record Detailed Cust. Ledg. Entry) | 23-28 | - | - |
| Integration event | OnPrepareTempVendLedgEntryOnAfterSetVendLedgerEntryFilters | (var Record Vendor Ledger Entry) | 23-28 | - | - |
| Integration event | OnPrepareTempVendLedgEntryOnAfterSetDtldVendLedgerEntryFilters | (var Record Detailed Vendor Ledg. Entry) | 23-28 | - | - |
| Integration event | OnAfterInitDtldEmplLedgerEntry | (var Record Detailed Employee Ledger Entry) | 24-28 | - | - |
| Integration event | OnAfterSetDtldEmplLedgEntryFilters | (var Record Detailed Employee Ledger Entry, Record Employee Ledger Entry) | 24-28 | - | - |
| Integration event | OnAfterShouldAdjustEmplLedgEntry | (Record Employee Ledger Entry, var Boolean) | 24-28 | - | - |
| Integration event | OnAfterSetVATEntryFilters | (var Record VAT Entry) | 24-28 | - | - |
| Integration event | OnAdjustEmployeeLedgerEntryOnBeforeInitDtldEmplLedgEntry | (var Record Employee, Record Employee Ledger Entry) | 24-28 | - | - |
| Integration event | OnAdjustEmployeeLedgerEntryOnAfterPrepareAdjust | (var Record Employee Ledger Entry, Decimal, Decimal) | 24-28 | - | - |
| Integration event | OnAfterAdjustEmployeeLedgerEntryOnAfterCalcAdjmtAmount | (Record Employee Ledger Entry, Record Exch. Rate Adjmt. Parameters, Decimal, Boolean, var Boolean) | 24-25 | - | - |
| Integration event | OnAfterProcessEmployeeAdjustment | (var Record Employee Ledger Entry) | 24-28 | - | - |
| Integration event | OnBeforeGetBankAccountNo | (Record Bank Account, var Code[20], var Boolean) | 24-28 | - | - |
| Integration event | OnBeforeGetCustAccountNo | (Record Cust. Ledger Entry, var Code[20], var Boolean) | 24-28 | - | - |
| Integration event | OnBeforeGetVendAccountNo | (Record Vendor Ledger Entry, var Code[20], var Boolean) | 24-28 | - | - |
| Integration event | OnBeforeGetEmplAccountNo | (Record Employee Ledger Entry, var Code[20], var Boolean) | 24-28 | - | - |
| Integration event | OnPrepareTempEmplLedgEntryOnAfterSetEmplLedgerEntryFilters | (var Record Employee Ledger Entry) | 24-28 | - | - |
| Integration event | OnPrepareTempEmplLedgEntryOnAfterSetDtldEmplLedgerEntryFilters | (var Record Detailed Employee Ledger Entry) | 24-28 | - | - |
| Integration event | OnSetPostingDimensionsOnCaseSourceEntryDimensions | (var Record Gen. Journal Line, var Record Dimension Set Entry) | 24-28 | - | - |
| Integration event | OnBeforePrepareTempCustLedgEntry | (var Record Cust. Ledger Entry, var Record Cust. Ledger Entry, Record Customer, var Boolean) | 24-28 | - | - |
| Integration event | OnBeforePrepareTempVendLedgEntry | (var Record Vendor Ledger Entry, var Record Vendor Ledger Entry, Record Vendor, var Boolean) | 24-28 | - | - |
| Integration event | OnAdjustExchRateCustOnAfterCalcFields | (var Record Cust. Ledger Entry) | 25-28 | - | - |
| Integration event | OnAdjustCustomerLedgerEntryOnAfterCalcFields | (var Record Cust. Ledger Entry) | 25-28 | - | - |
| Integration event | OnAdjustExchRateVendOnAfterCalcFields | (var Record Vendor Ledger Entry) | 25-28 | - | - |
| Integration event | OnProcessGLAccountAdjustmentOnBeforePostGLAccAdjmt | (var Record G/L Account) | 25-28 | - | - |
| Integration event | OnAdjustVendorLedgerEntryOnAfterCalcFields | (var Record Vendor Ledger Entry) | 25-28 | - | - |
| Integration event | OnAfterAdjustCustomerLedgerEntryOnAfterCalcAdjmtAmount | (Record Cust. Ledger Entry, var Record Exch. Rate Adjmt. Parameters, Decimal, Boolean, var Boolean) | 26-28 | - | - |
| Integration event | OnAfterAdjustVendorLedgerEntryOnAfterCalcAdjmtAmount | (Record Vendor Ledger Entry, var Record Exch. Rate Adjmt. Parameters, Decimal, Boolean, var Boolean) | 26-28 | - | - |
| Integration event | OnAfterAdjustEmployeeLedgerEntryOnAfterCalcAdjmtAmount | (Record Employee Ledger Entry, var Record Exch. Rate Adjmt. Parameters, Decimal, Boolean, var Boolean) | 26-28 | - | - |
| Integration event | OnSetPostingDimensionsElseCase | (var Record Gen. Journal Line, var Record Dimension Set Entry, var Record Exch. Rate Adjmt. Parameters) | 26-28 | - | - |
| Integration event | OnHandlePostAdjmtOnBeforePostAdjmt | (var Record Exch. Rate Adjmt. Buffer, var Record Currency, var Record Dimension Set Entry, var Enum Exch. Rate Adjmt. Account Type) | 26-28 | - | - |
| Integration event | OnAfterExchRateAdjmtBufferUpdate | (var Record Exch. Rate Adjmt. Parameters, var Record Exch. Rate Adjmt. Buffer) | 26-28 | - | - |
| Integration event | OnBeforePostAdjmt | (var Record Exch. Rate Adjmt. Buffer, var Record Dimension Set Entry) | 26-28 | - | - |
| Integration event | OnPostAdjmtOnBeforePostGenJnlLine | (var Record Gen. Journal Line, var Record Dimension Set Entry) | 26-28 | - | - |
| Integration event | OnSetAdditionalReportingCurrencyOnBeforeCheckTaxJurisdiction | (var Record Tax Jurisdiction, var Boolean) | 26-28 | - | - |
| Integration event | OnSummarizeExchRateAdjmtBufferOnAfterExchRateAdjmtBuffer2SetFilters | (var Record Exch. Rate Adjmt. Buffer, var Record Exch. Rate Adjmt. Buffer, var Record Exch. Rate Adjmt. Parameters) | 28 | - | - |

## Source

Symbols: Microsoft.BaseApplication.symbols.437dbf0e-84ff-417a-965d-ed2bb9650972, https://dynamicssmb2.pkgs.visualstudio.com/DynamicsBCPublicFeeds/_packaging/MSSymbols/nuget/v3/index.json, highest build per major on 2026-09-20.
AL source 29: https://github.com/microsoft/BCApps, MIT, releases/29.x at a66254c3b8b5bb1cea290dc8f9d097aec4381153.

Jonas Paprotka, 2026-09-20.
