Table of Contents

Codeunit "Gen. Jnl.-Apply"

ID 225
Namespace: Microsoft.Finance.ReceivablesPayables

Handles application of general journal lines to customer, vendor, and employee ledger entries. Provides payment application functionality with automatic settlement calculation and currency handling.

Remarks

Primary application engine for general journal posting with ledger entry application. Supports multi-currency applications with exchange rate validation and payment tolerance handling. Integrates with customer, vendor, and employee ledger entry application processes. Extensible through application events for custom settlement logic and validation.

Properties

Name Value
TableNo Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

Methods

CheckAgainstApplnCurrency

Validates currency compatibility between application currency and comparison currency for payment applications. Checks application between currencies setup and EMU currency configuration.

procedure CheckAgainstApplnCurrency(ApplnCurrencyCode: Code[10]; CompareCurrencyCode: Code[10]; AccType: Enum "Gen. Journal Account Type"; Message: Boolean): Boolean

Parameters

Name Type Description
ApplnCurrencyCode Code[10]

Currency code of the payment being applied

CompareCurrencyCode Code[10]

Currency code to compare against

AccType Enum Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Account Type"

Account type for determining applicable setup

Message Boolean

Whether to show error messages for validation failures

Returns

Type Description
Boolean

True if currencies are compatible for application, false otherwise

SetVendApplIdAPI

Sets vendor application ID for API-based vendor ledger entry applications. Validates currency compatibility and updates vendor ledger entry for application.

procedure SetVendApplIdAPI(GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line containing payment information

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry to apply payment against

ApplyVendorLedgerEntryAPI

Applies vendor ledger entries through API with comprehensive validation and currency checking. Processes application IDs and validates currency compatibility for API-based applications.

procedure ApplyVendorLedgerEntryAPI(var GenJournalLine: Record "Gen. Journal Line")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line with application information

Events

OnAfterRun

Integration event raised after the application process completes. Enables custom post-processing logic after general journal line application.

[IntegrationEvent(False,False)]
local procedure OnAfterRun(var GenJnlLine: Record "Gen. Journal Line")

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line that was processed for application

OnAfterCustLedgEntrySetFilters

Integration event raised after setting filters on customer ledger entries during application selection. Enables custom filtering logic for customer entry selection processes.

[IntegrationEvent(False,False)]
local procedure OnAfterCustLedgEntrySetFilters(var CustLedgerEntry: Record "Cust. Ledger Entry"; var GenJournalLine: Record "Gen. Journal Line"; AccNo: Code[20]; var CustomAppliesToId: Code[50]; var IsHandled: Boolean)

Parameters

Name Type Description
CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry with applied filters

GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line context for application

AccNo Code[20]

Account number for filtering

CustomAppliesToId Code[50]

Custom application ID for filtering

IsHandled Boolean

Set to true to skip standard processing

OnAfterVendLedgEntrySetFilters

Integration event raised after setting filters on vendor ledger entries during application selection. Enables custom filtering logic for vendor entry selection processes.

[IntegrationEvent(False,False)]
local procedure OnAfterVendLedgEntrySetFilters(var VendorLedgerEntry: Record "Vendor Ledger Entry"; GenJournalLine: Record "Gen. Journal Line"; AccNo: Code[20])

Parameters

Name Type Description
VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry with applied filters

GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line context for application

AccNo Code[20]

Account number for filtering

OnAfterApplyEmployeeLedgerEntry

Integration event raised after applying employee ledger entry with general journal line. Enables custom post-processing logic for employee payment applications.

[IntegrationEvent(False,False)]
local procedure OnAfterApplyEmployeeLedgerEntry(var GenJournalLine: Record "Gen. Journal Line"; EmployeeLedgerEntry: Record "Employee Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line used for application

EmployeeLedgerEntry Table Microsoft.HumanResources.Payables."Employee Ledger Entry"

Employee ledger entry that was applied

OnAfterSelectCustLedgEntry

Integration event raised after selecting a customer ledger entry for application. Enables customization of the customer selection process and additional validation.

[IntegrationEvent(False,False)]
local procedure OnAfterSelectCustLedgEntry(var GenJournalLine: Record "Gen. Journal Line"; var AccNo: Code[20]; var Selected: Boolean)

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being processed

AccNo Code[20]

Customer account number selected

Selected Boolean

Boolean indicating if selection was successful

OnAfterSelectEmplLedgEntry

Integration event raised after selecting an employee ledger entry for application. Enables customization of the employee selection process and additional validation.

[IntegrationEvent(False,False)]
local procedure OnAfterSelectEmplLedgEntry(var GenJournalLine: Record "Gen. Journal Line"; var AccNo: Code[20]; var Selected: Boolean)

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being processed

AccNo Code[20]

Employee account number selected

Selected Boolean

Boolean indicating if selection was successful

OnAfterSelectVendLedgEntry

Integration event raised after selecting a vendor ledger entry for application. Enables customization of the vendor selection process and additional validation.

[IntegrationEvent(False,False)]
local procedure OnAfterSelectVendLedgEntry(var GenJournalLine: Record "Gen. Journal Line"; var AccNo: Code[20]; var Selected: Boolean)

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being processed

AccNo Code[20]

Vendor account number selected

Selected Boolean

Boolean indicating if selection was successful

OnApplyCustomerLedgerEntryOnBeforeCheckAgainstApplnCurrency

Integration event raised before checking application currency for customer ledger entries. Enables custom currency validation logic for customer applications.

[IntegrationEvent(False,False)]
local procedure OnApplyCustomerLedgerEntryOnBeforeCheckAgainstApplnCurrency(var GenJournalLine: Record "Gen. Journal Line"; CustLedgerEntry: Record "Cust. Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry being applied to

OnApplyCustomerLedgerEntryOnBeforeModify

Integration event raised before modifying a customer ledger entry during application. Enables custom field updates and validation before the ledger entry is modified.

[IntegrationEvent(False,False)]
local procedure OnApplyCustomerLedgerEntryOnBeforeModify(var GenJnlLine: Record "Gen. Journal Line"; CustLedgerEntry: Record "Cust. Ledger Entry")

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry being modified

OnApplyVendorLedgerEntryOnBeforeCheckAgainstApplnCurrency

Integration event raised before checking application currency for vendor ledger entries. Enables custom currency validation logic for vendor applications.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryOnBeforeCheckAgainstApplnCurrency(var GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry being applied to

OnApplyVendorLedgerEntryOnBeforeModify

Integration event raised before modifying a vendor ledger entry during application. Enables custom field updates and validation before the ledger entry is modified.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryOnBeforeModify(var GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry"; VendorLedgerEntryLocal: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry being modified

VendorLedgerEntryLocal Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Local copy of vendor ledger entry for comparison

OnApplyEmployeeLedgerEntryOnBeforeUpdateAmount

Integration event raised before updating amount for employee ledger entry applications. Enables custom amount calculation logic for employee transactions.

[IntegrationEvent(False,False)]
local procedure OnApplyEmployeeLedgerEntryOnBeforeUpdateAmount(var GenJournalLine: Record "Gen. Journal Line"; EmployeeLedgerEntry: Record "Employee Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

EmployeeLedgerEntry Table Microsoft.HumanResources.Payables."Employee Ledger Entry"

Employee ledger entry being processed

OnBeforeRun

Integration event raised before starting the general journal application process. Enables custom preprocessing logic and allows complete replacement of standard application logic.

[IntegrationEvent(False,False)]
local procedure OnBeforeRun(var GenJnlLine: Record "Gen. Journal Line"; var IsHandled: Boolean)

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line to be processed for application

IsHandled Boolean

Set to true to skip standard application processing

OnBeforeCheckAgainstApplnCurrency

Integration event raised before checking currency compatibility during application. Enables custom currency validation logic and currency code modification.

[IntegrationEvent(False,False)]
local procedure OnBeforeCheckAgainstApplnCurrency(var ApplnCurrencyCode: Code[10]; var CompareCurrencyCode: Code[10])

Parameters

Name Type Description
ApplnCurrencyCode Code[10]

Application currency code to validate

CompareCurrencyCode Code[10]

Comparison currency code for validation

OnBeforeFindCustApply

Integration event raised before finding customer ledger entries for application. Enables custom application logic and amount calculation for customer entries.

[IntegrationEvent(False,False)]
local procedure OnBeforeFindCustApply(GenJournalLine: Record "Gen. Journal Line"; CustLedgerEntry: Record "Cust. Ledger Entry"; var Amount: Decimal; var IsHandled: Boolean)

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line to apply

CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry being evaluated

Amount Decimal

Amount to apply (by reference)

IsHandled Boolean

Set to true to skip standard application logic

OnBeforeFindVendApply

Integration event raised before finding vendor ledger entries for application. Enables custom application logic and amount calculation for vendor entries.

[IntegrationEvent(False,False)]
local procedure OnBeforeFindVendApply(GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry"; var Amount: Decimal; var IsHandled: Boolean)

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line to apply

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry being evaluated

Amount Decimal

Amount to apply (by reference)

IsHandled Boolean

Set to true to skip standard application logic

OnBeforeSelectCustLedgEntry

Integration event raised before selecting customer ledger entries for application. Enables custom selection logic and filtering for customer applications.

[IntegrationEvent(False,False)]
local procedure OnBeforeSelectCustLedgEntry(var GenJournalLine: Record "Gen. Journal Line"; var AccNo: Code[20]; var Selected: Boolean; var IsHandled: Boolean; var CustomAppliesToId: Code[50])

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being processed

AccNo Code[20]

Customer account number (by reference)

Selected Boolean

Selection result (by reference)

IsHandled Boolean

Set to true to skip standard selection logic

CustomAppliesToId Code[50]

Custom application ID for filtering

OnBeforeSelectEmplLedgEntry

Integration event raised before selecting employee ledger entries for application. Enables custom selection logic and filtering for employee applications.

[IntegrationEvent(False,False)]
local procedure OnBeforeSelectEmplLedgEntry(var GenJournalLine: Record "Gen. Journal Line"; var AccNo: Code[20]; var Selected: Boolean; var IsHandled: Boolean)

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being processed

AccNo Code[20]

Employee account number (by reference)

Selected Boolean

Selection result (by reference)

IsHandled Boolean

Set to true to skip standard selection logic

OnBeforeSelectVendLedgEntry

Integration event raised before selecting vendor ledger entries for application. Enables custom selection logic and filtering for vendor applications.

[IntegrationEvent(False,False)]
local procedure OnBeforeSelectVendLedgEntry(var GenJournalLine: Record "Gen. Journal Line"; var AccNo: Code[20]; var Selected: Boolean; var IsHandled: Boolean; var CustomAppliesToId: Code[50])

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being processed

AccNo Code[20]

Vendor account number (by reference)

Selected Boolean

Selection result (by reference)

IsHandled Boolean

Set to true to skip standard selection logic

CustomAppliesToId Code[50]

Custom application ID for filtering

OnSelectCustLedgEntryOnAfterSetFilters

Integration event raised after setting filters for customer ledger entry selection. Enables custom filtering and additional selection criteria for customer entries.

[IntegrationEvent(False,False)]
local procedure OnSelectCustLedgEntryOnAfterSetFilters(var CustLedgerEntry: Record "Cust. Ledger Entry"; var GenJournalLine: Record "Gen. Journal Line")

Parameters

Name Type Description
CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry record with filters applied

GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line driving the selection

OnSelectEmplLedgEntryOnAfterSetFilters

Integration event raised after setting filters for employee ledger entry selection. Enables custom filtering and additional selection criteria for employee entries.

[IntegrationEvent(False,False)]
local procedure OnSelectEmplLedgEntryOnAfterSetFilters(var EmployeeLedgerEntry: Record "Employee Ledger Entry"; var GenJournalLine: Record "Gen. Journal Line")

Parameters

Name Type Description
EmployeeLedgerEntry Table Microsoft.HumanResources.Payables."Employee Ledger Entry"

Employee ledger entry record with filters applied

GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line driving the selection

OnSelectVendLedgEntryOnAfterSetFilters

Integration event raised after setting filters for vendor ledger entry selection. Enables custom filtering and additional selection criteria for vendor entries.

[IntegrationEvent(False,False)]
local procedure OnSelectVendLedgEntryOnAfterSetFilters(var VendorLedgerEntry: Record "Vendor Ledger Entry"; var GenJournalLine: Record "Gen. Journal Line")

Parameters

Name Type Description
VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry record with filters applied

GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line driving the selection

OnApplyVendorLedgerEntryOnBeforeConfirmUpdateCurrency

Integration event raised before confirming currency update for vendor applications. Enables custom confirmation logic and currency update handling.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryOnBeforeConfirmUpdateCurrency(var GenJournalLine: Record "Gen. Journal Line"; CurrencyCode: Code[10]; var IsHandled: Boolean)

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being processed

CurrencyCode Code[10]

Currency code requiring confirmation

IsHandled Boolean

Set to true to skip standard confirmation dialog

OnApplyCustomerLedgerEntryOnBeforeConfirmUpdateCurrency

Integration event raised before confirming currency update for customer applications. Enables custom confirmation logic and currency update handling.

[IntegrationEvent(False,False)]
local procedure OnApplyCustomerLedgerEntryOnBeforeConfirmUpdateCurrency(var GenJournalLine: Record "Gen. Journal Line"; CurrencyCode: Code[10]; var IsHandled: Boolean)

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being processed

CurrencyCode Code[10]

Currency code requiring confirmation

IsHandled Boolean

Set to true to skip standard confirmation dialog

OnApplyCustomerLedgerEntryOnBeforeCheckAgainstApplnCurrencyCustomerAmountNotZero

Integration event raised before checking application currency when customer amount is not zero. Enables custom currency validation for non-zero customer application amounts.

[IntegrationEvent(False,False)]
local procedure OnApplyCustomerLedgerEntryOnBeforeCheckAgainstApplnCurrencyCustomerAmountNotZero(GenJournalLine: Record "Gen. Journal Line"; CustLedgerEntry: Record "Cust. Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry with non-zero amount

OnApplyCustomerLedgerEntryOnBeforeCheckAgainstApplnCurrencyCustomer

Integration event raised before checking application currency for customer applications. Enables custom currency validation logic for customer ledger entries.

[IntegrationEvent(False,False)]
local procedure OnApplyCustomerLedgerEntryOnBeforeCheckAgainstApplnCurrencyCustomer(GenJournalLine: Record "Gen. Journal Line"; CustLedgerEntry: Record "Cust. Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry being checked

OnApplyCustomerLedgerEntryOnAfterValidateAmount

Integration event raised after validating amount in customer ledger entry application. Enables custom processing after amount validation is complete.

[IntegrationEvent(True,False)]
local procedure OnApplyCustomerLedgerEntryOnAfterValidateAmount(var GenJnlLine: Record "Gen. Journal Line"; var CustLedgEntry: Record "Cust. Ledger Entry")

Parameters

Name Type Description
GenJnlLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line with validated amount

CustLedgEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry being applied

OnSetVendApplIdAPIOnBeforeCheckAgainstApplnCurrency

Integration event raised before checking application currency in vendor API operations. Enables custom currency validation for vendor applications via API.

[IntegrationEvent(False,False)]
local procedure OnSetVendApplIdAPIOnBeforeCheckAgainstApplnCurrency(GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being processed

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry being applied via API

OnApplyVendorLedgerEntryAPIOnBeforeCheckAgainstApplnCurrencyAmountZero

Integration event raised before checking application currency when vendor API amount is zero. Enables custom currency validation for zero-amount vendor applications via API.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryAPIOnBeforeCheckAgainstApplnCurrencyAmountZero(GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry with zero amount

OnApplyVendorLedgerEntryAPIOnBeforeCheckAgainstApplnCurrencyAmountNonZero

Integration event raised before checking application currency when vendor API amount is non-zero. Enables custom currency validation for non-zero vendor applications via API.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryAPIOnBeforeCheckAgainstApplnCurrencyAmountNonZero(GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry with non-zero amount

OnApplyVendorLedgerEntryAPIOnBeforeCheckAgainstApplnCurrencyDifferentCurrenciesAmountNonZero

Integration event raised before checking application currency for different currencies with non-zero vendor API amounts. Enables custom currency validation when vendor API applications involve different currencies.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryAPIOnBeforeCheckAgainstApplnCurrencyDifferentCurrenciesAmountNonZero(GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry with different currency

OnApplyVendorLedgerEntryOnAfterSetGenJnlLineAppliesToDocNo

Integration event raised after setting applies-to document number for vendor applications. Enables custom processing after vendor application document linking is established.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryOnAfterSetGenJnlLineAppliesToDocNo(var GenJournalLine: Record "Gen. Journal Line"; var VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line with updated applies-to document number

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry being applied

OnApplyVendorLedgerEntryOnBeforeCheckAgainstApplnCurrencyAmountNotZero

Integration event raised before checking application currency when vendor amount is not zero. Enables custom currency validation for non-zero vendor application amounts.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryOnBeforeCheckAgainstApplnCurrencyAmountNotZero(GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry with non-zero amount

OnApplyVendorLedgerEntryOnBeforeCheckAgainstApplnCurrencyDifferentCurrenciesAmountNotZero

Integration event raised before checking application currency for different currencies with non-zero vendor amounts. Enables custom currency validation when vendor applications involve different currencies and non-zero amounts.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryOnBeforeCheckAgainstApplnCurrencyDifferentCurrenciesAmountNotZero(GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being applied

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry with different currency and non-zero amount

OnApplyCustomerLedgerEntryOnAfterSetCustomerAppliesToDocNo

Integration event raised after setting applies-to document number for customer applications. Enables custom processing after customer application document linking is established.

[IntegrationEvent(False,False)]
local procedure OnApplyCustomerLedgerEntryOnAfterSetCustomerAppliesToDocNo(var GenJournalLine: Record "Gen. Journal Line"; var CustLedgerEntry: Record "Cust. Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line with updated applies-to document number

CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry being applied

OnApplyVendorLedgerEntryOnAfterSetVendorAppliesToDocNo

Integration event raised after setting applies-to document number for vendor applications. Enables custom processing after vendor application document linking is established.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryOnAfterSetVendorAppliesToDocNo(var GenJournalLine: Record "Gen. Journal Line"; VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line with updated applies-to document number

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry being applied

OnBeforeUpdateCustLedgEntry

Integration event raised before updating customer ledger entries during application. Enables custom update logic and validation before customer ledger entry modification.

[IntegrationEvent(False,False)]
local procedure OnBeforeUpdateCustLedgEntry(var CustLedgerEntry: Record "Cust. Ledger Entry"; GenJournalLine: Record "Gen. Journal Line"; var IsHandled: Boolean)

Parameters

Name Type Description
CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry being updated

GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line driving the update

IsHandled Boolean

Set to true to skip standard update logic

OnBeforeUpdateVendLedgEntry

Integration event raised before updating vendor ledger entries during application. Enables custom update logic and validation before vendor ledger entry modification.

[IntegrationEvent(False,False)]
local procedure OnBeforeUpdateVendLedgEntry(var VendorLedgerEntry: Record "Vendor Ledger Entry"; GenJournalLine: Record "Gen. Journal Line"; var IsHandled: Boolean)

Parameters

Name Type Description
VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry being updated

GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line driving the update

IsHandled Boolean

Set to true to skip standard update logic

OnAfterUpdateVendLedgEntry

Integration event raised after updating vendor ledger entries during application. Enables custom processing after vendor ledger entry modification is complete.

[IntegrationEvent(False,False)]
local procedure OnAfterUpdateVendLedgEntry(var GenJournalLine: Record "Gen. Journal Line"; var VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line that drove the update

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry that was updated

OnApplyVendorLedgerEntryAPIOnBeforeValidateAmount

Integration event raised before validating amount in vendor API applications. Enables custom amount validation logic for vendor applications via API.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryAPIOnBeforeValidateAmount(var GenJournalLine: Record "Gen. Journal Line")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being validated

OnApplyVendorLedgerEntryOnBeforeValidateAmount

Integration event raised before validating amount in vendor applications. Enables custom amount validation logic for standard vendor ledger entry applications.

[IntegrationEvent(False,False)]
local procedure OnApplyVendorLedgerEntryOnBeforeValidateAmount(var GenJournalLine: Record "Gen. Journal Line"; var VendorLedgEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line being validated

VendorLedgEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Vendor ledger entry being applied

OnSetVendApplIdAPIOnBeforeCheckPostingDate

Integration event raised before checking posting date in vendor API applications. Enables custom posting date validation for vendor applications via API.

[IntegrationEvent(False,False)]
local procedure OnSetVendApplIdAPIOnBeforeCheckPostingDate(var TempApplyingVendorLedgerEntry: Record "Vendor Ledger Entry"; var GenJournalLine: Record "Gen. Journal Line"; var VendorLedgerEntry: Record "Vendor Ledger Entry")

Parameters

Name Type Description
TempApplyingVendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Temporary vendor ledger entry being applied

GenJournalLine Table Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Line"

General journal line driving the application

VendorLedgerEntry Table Microsoft.Purchases.Payables."Vendor Ledger Entry"

Target vendor ledger entry for application

OnCalcAppliedAmountOnCustLedgerEntryOnAfterCalcRemainingAmount

Integration event raised after calculating remaining amount in customer ledger entry applied amount calculation. Enables custom processing after remaining amount calculation is complete.

[IntegrationEvent(False,False)]
local procedure OnCalcAppliedAmountOnCustLedgerEntryOnAfterCalcRemainingAmount(var CustLedgerEntry: Record "Cust. Ledger Entry")

Parameters

Name Type Description
CustLedgerEntry Table Microsoft.Sales.Receivables."Cust. Ledger Entry"

Customer ledger entry with calculated remaining amount

See also