tableFinanceofficial - Microsoftderived - from the source, no model text

Table 1294 "Applied Payment Entry"

Base Application · Microsoft.Bank.Reconciliation

Across versions

  1. BC23present
  2. BC244 events added
  3. BC252 events added
  4. BC261 events added
  5. BC271 events added
  6. BC281 fields changed
  7. BC291 procedures added
  8. BC30unchanged

Neighbourhood 16 connected objects and pages

Table 270 "Bank Account" (relates to, 2 links)Bank AccountTable 15 "G/L Account" (relates to)G/L AccountTable 17 "G/L Entry" (relates to)Table 18 "Customer" (relates to)CustomerTable 21 "Cust. Ledger Entry" (relates to)Cust. Ledger EntryTable 23 "Vendor" (relates to)VendorTable 25 "Vendor Ledger Entry" (relates to)Vendor Ledger EntryTable 273 "Bank Acc. Reconciliation" (relates to)Bank Acc. ReconciliationTable 4 "Currency" (relates to)CurrencyPage 1288 "Payment-to-Entry Match" (pages and codeunits on it)Payment-to-Entry MatchPage 1292 "Payment Application" (pages and codeunits on it)Payment ApplicationCodeunit 103 "Cust. Entry-Edit" (calls)Cust. Entry-EditCodeunit 113 "Vend. Entry-Edit" (calls)Vend. Entry-EditCodeunit 114 "Empl. Entry-Edit" (calls)Empl. Entry-EditCodeunit 426 "Payment Tolerance Management" (calls)Table 274 "Bank Acc. Reconciliation Line" (referenced by, 2 links)Bank Acc. Reconciliation Line

Open in the neighbourhood explorer

One hop out, from the extracted relations and call graph. Up to 40 shown; the sections below list them all.

Base Application · Microsoft.Bank.Reconciliation · BC23-30 · source at ea08af5e · facts from BC29

Properties

Property Value
Caption Applied Payment Entry
DataClassification CustomerContent

Fields

Explanation: the field’s ToolTip in the code; without one, the ToolTip of a page control bound to the field (marked via the page); without that, its Caption (marked caption) when that differs from the name.

No. Name Type Explanation Notes
1 Bank Account No. Code[20] — TableRelation Table 270 “Bank Account” (Bank Account)
2 Statement No. Code[20] — TableRelation Table 273 “Bank Acc. Reconciliation” (“Bank Acc. Reconciliation”.“Statement No.” where(“Bank Account No.” = field(“Bank Account No.”), “Statement Type” = field(“Statement Type”)))
3 Statement Line No. Integer —
20 Statement Type Enum “Bank Acc. Rec. Stmt. Type” — enum Enum 1254 “Bank Acc. Rec. Stmt. Type”
21 Account Type Enum “Gen. Journal Account Type” — enum Enum 81 “Gen. Journal Account Type”
22 Account No. Code[20] — TableRelation Table 15 “G/L Account”, Table 18 “Customer”, Table 23 “Vendor” (if (“Account Type” = const(“G/L Account”)) “G/L Account” where(“Account Type” = const(Posting), Blocked = const(false)) else if (“Account Type” = const(Customer)) Customer else if (“Account Type” = const(Vendor)) Vendor else if (“Account Type” = const(“Bank Account”)) “Bank Account” else if (“Accoun…)
23 Applies-to Entry No. Integer — TableRelation Table 17 “G/L Entry”, Table 21 “Cust. Ledger Entry”, Table 25 “Vendor Ledger Entry” (if (“Account Type” = const(“G/L Account”)) “G/L Entry” else if (“Account Type” = const(Customer)) “Cust. Ledger Entry” where(Open = const(true)) else if (“Account Type” = const(Vendor)) “Vendor Ledger Entry” where(Open = const(true)) else if (“Account Type” = const(“Bank Account”)) “Bank Account Led…)
24 Applied Amount Δ BC28 Decimal —
29 Applied Pmt. Discount Decimal —
30 Quality Integer —
31 Posting Date Date —
32 Document Type Enum “Gen. Journal Document Type” — enum Enum 6 “Gen. Journal Document Type”
33 Document No. Code[20] —
34 Description Text[100] —
35 Currency Code Code[10] — TableRelation Table 4 “Currency”
36 Due Date Date —
37 External Document No. Code[35] —
50 Match Confidence Enum “Bank Rec. Match Confidence” — enum Enum 1252 “Bank Rec. Match Confidence”; not editable

Keys

  • Key1: Statement Type, Bank Account No., Statement No., Statement Line No., Account Type, Account No., Applies-to Entry No. (clustered)

Events published

  • OnAfterCheckCurrencyCombination(var AppliedPaymentEntry: Record "Applied Payment Entry") (integration): Event raised after checking the currency combination for applied payment entries.
  • OnAfterAppliedPaymentEntryFilterOnGetTotalAppliedAmountInclPmtDisc(var AppliedPaymentEntry: Record "Applied Payment Entry"; AppliedPaymentEntryRec: Record "Applied Payment Entry") + BC24 (integration): Event raised after filtering applied payment entries when getting the total applied amount including payment discount.
  • OnAfterFilterEntryAppliedToOtherStmtLines(var AppliedPaymentEntry: Record "Applied Payment Entry") + BC24 (integration): Event raised after filtering entries that are applied to other statement lines.
  • OnAfterGetDiscInfo(var AppliedPaymentEntry: Record "Applied Payment Entry"; var PmtDiscDueDate: Date; var PmtDiscToleranceDate: Date; var RemPmtDiscPossible: Decimal) (integration): Event raised after getting discount information for an applied payment entry.
  • OnBeforeCheckCurrentMatchesExistingAppln(ExistingAppliedPmtEntry: Record "Applied Payment Entry"; var IsHandled: Boolean) + BC24 (integration): Event raised before checking if the current match exists for an existing application.
  • OnAfterAppliedPaymentEntryFiltersGetNoOfAppliedEntries(var AppliedPaymentEntry: Record "Applied Payment Entry"; AppliedPaymentEntryRec: Record "Applied Payment Entry") + BC24 (integration): Event raised after applying filters on applied payment entries to get the number of applied entries.
  • OnAfterGetAcceptedPmtTolerance(AppliedPaymentEntry: Record "Applied Payment Entry"; var Result: Decimal) (integration): Event raised after getting the accepted payment tolerance for an applied payment entry.
  • OnAfterIsAcceptedPmtDiscTolerance(AppliedPaymentEntry: Record "Applied Payment Entry"; var Result: Boolean) (integration): Event raised after checking if the payment discount tolerance is accepted for an applied payment entry.
  • OnAfterLookupAppliesToEntryNo(var AppliedPaymentEntry: Record "Applied Payment Entry") (integration): Event raised after looking up the applies-to entry number for an applied payment entry.
  • OnAfterGetLedgEntryInfo(var AppliedPaymentEntry: Record "Applied Payment Entry") (integration): Event raised after getting ledger entry information for an applied payment entry.
  • OnAfterGetRemAmt(AppliedPaymentEntry: Record "Applied Payment Entry"; var Result: Decimal) (integration): Event raised after getting the remaining amount for an applied payment entry.
  • OnBeforeCalcAmountToApply(var AppliedPaymentEntry: Record "Applied Payment Entry"; PostingDate: Date; var AmountToApply: Decimal; var IsHandled: Boolean) (integration): Event raised before calculating the amount to apply for an applied payment entry.
  • OnUpdateParentBankAccReconLineOnBeforeBankAccReconLineModify(var AppliedPaymentEntry: Record "Applied Payment Entry"; var BankAccReconciliationLine: Record "Bank Acc. Reconciliation Line"; IsDelete: Boolean) (integration): Event raised when updating the parent bank account reconciliation line before modifying the bank account reconciliation line record.
  • OnApplyFromBankStmtMatchingBufOnBeforeInsert(BankAccReconLine: Record "Bank Acc. Reconciliation Line"; BankStmtMatchingBuffer: Record "Bank Statement Matching Buffer"; TextMapperAmount: Decimal; EntryNo: Integer; var AppliedPaymentEntry: Record "Applied Payment Entry") (integration): Event raised when applying from bank statement matching buffer before inserting the applied payment entry.
  • OnGetCustLedgEntryRemAmtOnBeforeCalcFields(AppliedPaymentEntry: Record "Applied Payment Entry"; var IsHandled: Boolean; var Result: Decimal) + BC25 (integration): Event raised when getting customer ledger entry remaining amount before calculating fields.
  • OnGetVendLedgEntryRemAmtOnBeforeCalcFields(AppliedPaymentEntry: Record "Applied Payment Entry"; var IsHandled: Boolean; var Result: Decimal) + BC25 (integration): Event raised when getting vendor ledger entry remaining amount before calculating fields.
  • OnBeforeSuggestAmtToApply(var AppliedPaymentEntry: Record "Applied Payment Entry"; var IsHandled: Boolean; var Result: Decimal) + BC26 (integration)
  • OnBeforeAppliesToEntryNoLookup(var AppliedPaymentEntry: Record "Applied Payment Entry"; var IsHandled: boolean) + BC27 (integration)

Procedures

  • SuggestAmtToApply(): Decimal: Calculates the suggested amount to apply based on remaining amounts and payment application logic. Takes into account amounts already applied to other statement lines, payment discounts, and document type specific rules. For credit memos, applies special logic based on account type and amount direct…
  • SuggestDiscToApply(UseAppliedAmt: Boolean): Decimal: Calculates the suggested payment discount amount to apply based on discount terms and timing. Evaluates payment discount eligibility using due dates, tolerance periods, and applied amounts.
  • GetDiscInfo(var PmtDiscDueDate: Date; var PmtDiscToleranceDate: Date; var RemPmtDiscPossible: Decimal): Retrieves payment discount information including due dates and remaining discount amounts. Populates payment discount details from customer or vendor ledger entries based on account type.
  • GetRemAmt(): Decimal: Calculates the remaining amount available for application from the target ledger entry. Returns different amounts based on account type (Customer, Vendor, Employee, Bank Account) and entry status. For unassigned entries, returns the statement line remaining amount.
  • GetStmtLineRemAmtToApply(): Decimal: Calculates the remaining amount available on the statement line for payment application. Considers the difference amount on the bank reconciliation line and any previously applied amounts. Returns zero if the line difference is already fully allocated.
  • GetLedgEntryInfo(): Retrieves and populates ledger entry information based on the applied entry number and account type. Loads relevant details from customer, vendor, employee, or bank account ledger entries into the current applied payment entry record fields.
  • RunOnAfterGetLedgEntryInfo() + BC29 (internal)
  • GetAmtAppliedToOtherStmtLines(): Decimal
  • FilterEntryAppliedToOtherStmtLines()
  • FilterAppliedPmtEntry(BankAccReconLine: Record "Bank Acc. Reconciliation Line"): Sets filters on the applied payment entry table to match a specific bank reconciliation line. Filters by statement type, bank account number, statement number, and statement line number to retrieve all payment applications for the specified reconciliation line.
  • AppliedPmtEntryLinesExist(BankAccReconLine: Record "Bank Acc. Reconciliation Line"): Boolean: Checks if applied payment entry lines exist for a specific bank reconciliation line. Uses FilterAppliedPmtEntry to set appropriate filters and then checks for record existence.
  • TransferFromBankAccReconLine(BankAccReconLine: Record "Bank Acc. Reconciliation Line"): Transfers key identification fields from a bank reconciliation line to this applied payment entry. Copies statement type, bank account number, statement number, and statement line number to establish the relationship between the payment entry and its source reconciliation line.
  • ApplyFromBankStmtMatchingBuf(BankAccReconLine: Record "Bank Acc. Reconciliation Line"; BankStmtMatchingBuffer: Record "Bank Statement Matching Buffer"; TextMapperAmount: Decimal; EntryNo: Integer): Creates an applied payment entry from bank statement matching buffer results and text mapper amounts. Initializes a new payment application based on automatic matching results, including account details, applied amounts, and quality scoring. Handles both regular matching and text-to-account mapping …
  • GetTotalAppliedAmountInclPmtDisc(IsDelete: Boolean): Decimal
  • UpdatePaymentDiscount(PaymentDiscountAmount: Decimal)
  • SetPaymentDiscount(PaymentDiscountAmount: Decimal; DifferentLineThanCurrent: Boolean)
  • RemovePaymentDiscount()
  • CalcAmountToApply(PostingDate: Date): Decimal

Plus 38 local procedures.

Triggers

OnDelete, OnInsert, OnModify

Relations

Referenced by

2 fields in 1 objects relate to this table (TableRelation or CalcFormula).

Pages and codeunits on this table

Calls

From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.

Recent changes

Ask your agent

Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "table", object_name: "Applied Payment Entry"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.

Evidence 1 sources