Table of Contents

Table "Finance Charge Memo Line"

ID 303
Namespace: Microsoft.Sales.FinanceCharge

Stores line items for unissued finance charge memos including customer ledger entries, interest amounts, and additional fees.

Properties

Name Value
Caption Finance Charge Memo Line
DataClassification CustomerContent

Fields

Name Type Description
"Finance Charge Memo No." Code[20]

Specifies the finance charge memo number that this line belongs to.

"Line No." Integer

Specifies the sequential line number within the finance charge memo.

"Attached to Line No." Integer

Specifies the line number that this line is attached to, used for extended text lines.

Type Option

Specifies the line type: blank for text, G/L Account for fees, or Customer Ledger Entry for interest charges.

"Entry No." Integer

Specifies the customer ledger entry number for which interest is being charged.

"Posting Date" Date

Specifies the posting date of the original customer ledger entry.

"Document Date" Date

Specifies the document date of the original customer ledger entry.

"Due Date" Date

Specifies the due date of the original customer ledger entry used for interest calculation.

"Document Type" Enum Microsoft.Finance.GeneralLedger.Journal."Gen. Journal Document Type"

Specifies the document type of the original customer ledger entry, such as invoice or credit memo.

"Document No." Code[20]

Specifies the document number of the original customer ledger entry.

Description Text[100]

Specifies the description of the line, typically the customer ledger entry description or G/L account name.

"Original Amount" Decimal

Specifies the original amount of the customer ledger entry before any payments.

"Remaining Amount" Decimal

Specifies the remaining unpaid amount of the customer ledger entry at the document date.

"No." Code[20]

Specifies the G/L account number for additional fees or the standard text code for text lines.

Amount Decimal

Specifies the interest amount or additional fee amount for this line.

"Interest Rate" Decimal

Specifies the interest rate percentage used to calculate the finance charge on this entry.

"Gen. Prod. Posting Group" Code[20]

Specifies the general product posting group used for posting the finance charge.

"VAT %" Decimal

Specifies the VAT percentage applied to the finance charge amount.

"VAT Calculation Type" Enum Microsoft.Foundation.Enums."Tax Calculation Type"

Specifies how VAT is calculated for this line, such as normal VAT or reverse charge.

"VAT Amount" Decimal

Specifies the calculated VAT amount on the finance charge.

"Tax Group Code" Code[20]

Specifies the tax group code used for sales tax calculation in North American jurisdictions.

"VAT Prod. Posting Group" Code[20]

Specifies the VAT product posting group that determines the VAT rate and accounts.

"VAT Identifier" Code[20]

Specifies the VAT identifier code from the VAT posting setup.

"Line Type" Option

Specifies the type of line: finance charge line, beginning text, ending text, or rounding.

"VAT Clause Code" Code[20]

Specifies the VAT clause code that provides explanatory text for VAT on printed documents.

"Detailed Interest Rates Entry" Boolean

Indicates whether this line contains detailed interest rate breakdown when multiple rates apply.

"System-Created Entry" Boolean

Indicates whether this line was created automatically by the system rather than manually.

SystemId Guid
SystemCreatedAt DateTime
SystemCreatedBy Guid
SystemModifiedAt DateTime
SystemModifiedBy Guid
SystemCreatedByUserName Text[50]
SystemCreatedByFullName Text[80]
SystemModifiedByUserName Text[50]
SystemModifiedByFullName Text[80]
SystemRowVersion BigInteger

Methods

CheckAttachedLines

Checks whether any lines are attached to this finance charge memo line.

procedure CheckAttachedLines(): Boolean

Returns

Type Description
Boolean

True if attached lines exist; otherwise, false.

UpdateAttachedLines

Deletes all lines that are attached to this finance charge memo line.

procedure UpdateAttachedLines()

SetFinChrgMemoHeader

Sets the finance charge memo header for processing line calculations.

procedure SetFinChrgMemoHeader(var NewFinChrgMemoHeader: Record "Finance Charge Memo Header")

Parameters

Name Type Description
NewFinChrgMemoHeader Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Header"

Specifies the finance charge memo header to use for line processing.

GetCurrencyCode

Retrieves the currency code from the parent finance charge memo header.

procedure GetCurrencyCode(): Code[10]

Returns

Type Description
Code[10]

The currency code of the finance charge memo.

CalcClosedatDate

Calculates the closed at date for the customer ledger entry based on closing entries.

procedure CalcClosedatDate(): Date

Returns

Type Description
Date

The calculated closed at date.

SetCheckingMode

Sets the checking mode to enable validation without inserting records.

procedure SetCheckingMode(DoChecking: Boolean)

Parameters

Name Type Description
DoChecking Boolean

True to enable checking mode; false to disable.

LookupDocNo

Opens the customer ledger entries lookup page filtered by the current document number.

procedure LookupDocNo()

Events

OnBeforeCalcFinChrgProcedure

Raised before the finance charge calculation procedure executes.

[IntegrationEvent(False,False)]
local procedure OnBeforeCalcFinChrgProcedure(var FinanceChargeMemoLine: Record "Finance Charge Memo Line"; var FinanceChargeMemoHeader: Record "Finance Charge Memo Header"; var IsHandled: Boolean)

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line record.

FinanceChargeMemoHeader Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Header"

Specifies the finance charge memo header record.

IsHandled Boolean

Set to true to skip the default finance charge calculation.

OnAfterCalcFinanceChargeInterestRate

Raised after the finance charge interest rate is calculated.

[IntegrationEvent(False,False)]
local procedure OnAfterCalcFinanceChargeInterestRate(FinanceChargeMemoLine: Record "Finance Charge Memo Line"; CustLedgerEntry: Record "Cust. Ledger Entry"; FinanceChargeTerms: Record "Finance Charge Terms"; var UseCalcDate: Date)

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line record.

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

Specifies the customer ledger entry record.

FinanceChargeTerms Table Microsoft.Sales.FinanceCharge."Finance Charge Terms"

Specifies the finance charge terms record.

UseCalcDate Date

Specifies the calculation date that can be modified.

OnBeforeCreateMulitplyInterestRateEntries

Raised before creating multiple interest rate entries for varying interest rates.

[IntegrationEvent(False,False)]
local procedure OnBeforeCreateMulitplyInterestRateEntries(var FinanceChargeMemoLine: Record "Finance Charge Memo Line"; var InsertedLines: Boolean; var IsHandled: Boolean)

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line record.

InsertedLines Boolean

Specifies whether lines were inserted.

IsHandled Boolean

Set to true to skip the default multiple interest rate entry creation.

OnBeforeCalcClosedatDate

Raised before the closed at date is calculated for the customer ledger entry.

[IntegrationEvent(False,False)]
local procedure OnBeforeCalcClosedatDate(CustLedgerEntry: Record "Cust. Ledger Entry"; var ClosedAtDate: Date; var IsHandled: Boolean)

Parameters

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

Specifies the customer ledger entry record.

ClosedAtDate Date

Specifies the closed at date that can be set.

IsHandled Boolean

Set to true to skip the default closed at date calculation.

OnCalcFinChrgOnAfterFinChrgTermsInterestCalculationMethodCase

Raised after the interest calculation method case is evaluated in the finance charge calculation.

[IntegrationEvent(False,False)]
local procedure OnCalcFinChrgOnAfterFinChrgTermsInterestCalculationMethodCase(var FinanceChargeMemoLine: Record "Finance Charge Memo Line"; FinanceChargeTerms: Record "Finance Charge Terms"; FinanceChargeMemoHeader: Record "Finance Charge Memo Header"; var FinanceChargeMemoLineSender: Record "Finance Charge Memo Line")

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line from the loop.

FinanceChargeTerms Table Microsoft.Sales.FinanceCharge."Finance Charge Terms"

Specifies the finance charge terms record.

FinanceChargeMemoHeader Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Header"

Specifies the finance charge memo header record.

FinanceChargeMemoLineSender Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the original finance charge memo line record.

OnCalcFinChrgOnAfterCalcSkipBecauseEntryOnHold

Raised after determining whether to skip a customer ledger entry because it is on hold.

[IntegrationEvent(False,False)]
local procedure OnCalcFinChrgOnAfterCalcSkipBecauseEntryOnHold(CustLedgerEntry: Record "Cust. Ledger Entry"; FinanceChargeMemoHeader: Record "Finance Charge Memo Header"; var SkipBecauseEntryOnHold: Boolean)

Parameters

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

Specifies the customer ledger entry record.

FinanceChargeMemoHeader Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Header"

Specifies the finance charge memo header record.

SkipBecauseEntryOnHold Boolean

Specifies whether to skip the entry that can be modified.

OnCalcFinChrgOnBeforeCheckNrOfLinesToInsert

Raised before checking the number of lines to insert for multiple interest rates.

[IntegrationEvent(False,False)]
local procedure OnCalcFinChrgOnBeforeCheckNrOfLinesToInsert(var FinanceChargeMemoLine: Record "Finance Charge Memo Line"; NrOfDays: Integer)

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line record.

NrOfDays Integer

Specifies the number of days for interest calculation.

OnBeforeEnsureNotOnHold

Raised before validating that the customer ledger entry is not on hold.

[IntegrationEvent(False,False)]
local procedure OnBeforeEnsureNotOnHold(var CustLedgerEntry: Record "Cust. Ledger Entry"; var FinanceChargeMemoHeader: Record "Finance Charge Memo Header"; var IsHandled: Boolean)

Parameters

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

Specifies the customer ledger entry record.

FinanceChargeMemoHeader Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Header"

Specifies the finance charge memo header record.

IsHandled Boolean

Set to true to skip the default on hold validation.

OnValidateVATProdPostingGroupOnAfterVATPostingSetupGet

Raised after the VAT posting setup is retrieved during VAT product posting group validation.

[IntegrationEvent(False,False)]
local procedure OnValidateVATProdPostingGroupOnAfterVATPostingSetupGet(var VATPostingSetup: Record "VAT Posting Setup"; FinanceChargeMemoLine: Record "Finance Charge Memo Line")

Parameters

Name Type Description
VATPostingSetup Table Microsoft.Finance.VAT.Setup."VAT Posting Setup"

Specifies the VAT posting setup record.

FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line record.

OnAfterSetCustLedgEntryView

Raised after the customer ledger entry view filters are set.

[IntegrationEvent(False,False)]
local procedure OnAfterSetCustLedgEntryView(var CustLedgEntry: Record "Cust. Ledger Entry"; FinChrgTerms: Record "Finance Charge Terms"; FinChrgMemoHeader: Record "Finance Charge Memo Header")

Parameters

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

Specifies the customer ledger entry record with filters applied.

FinChrgTerms Table Microsoft.Sales.FinanceCharge."Finance Charge Terms"

Specifies the finance charge terms record.

FinChrgMemoHeader Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Header"

Specifies the finance charge memo header record.

OnValidateNoOnAfterAssignGLAccountValues

Raised after G/L account values are assigned when validating the No. field.

[IntegrationEvent(False,False)]
local procedure OnValidateNoOnAfterAssignGLAccountValues(var FinanceChargeMemoLine: Record "Finance Charge Memo Line"; FinanceChargeMemoHeader: Record "Finance Charge Memo Header"; GLAccount: Record "G/L Account")

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line record.

FinanceChargeMemoHeader Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Header"

Specifies the finance charge memo header record.

GLAccount Table Microsoft.Finance.GeneralLedger.Account."G/L Account"

Specifies the G/L account record.

OnValidateVATProdPostingGroupOnBeforeVATPostingSetupGet

Raised before the VAT posting setup is retrieved during VAT product posting group validation.

[IntegrationEvent(False,False)]
local procedure OnValidateVATProdPostingGroupOnBeforeVATPostingSetupGet(var FinanceChargeMemoLine: Record "Finance Charge Memo Line"; xFinanceChargeMemoLine: Record "Finance Charge Memo Line"; var IsHandled: Boolean)

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the current finance charge memo line record.

xFinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the previous finance charge memo line record.

IsHandled Boolean

Set to true to skip the default VAT posting setup retrieval.

OnCreateMulitplyInterestRateEntriesOnBeforeBuildDescription

Raised before building the description for multiple interest rate entries.

[IntegrationEvent(False,False)]
local procedure OnCreateMulitplyInterestRateEntriesOnBeforeBuildDescription(var FinanceChargeMemoLine: Record "Finance Charge Memo Line"; UseCalcDate: Date; UseDueDate: Date)

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line record.

UseCalcDate Date

Specifies the calculation end date.

UseDueDate Date

Specifies the due date used for calculation.

OnAfterCumulateDetailedEntries

Raised after cumulating detailed customer ledger entries for interest calculation.

[IntegrationEvent(False,False)]
local procedure OnAfterCumulateDetailedEntries(var FinanceChargeMemoLine: Record "Finance Charge Memo Line"; var FinanceChargeMemoHeader: Record "Finance Charge Memo Header"; ClosedAtDate: Date; var CumAmount: Decimal)

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line record.

FinanceChargeMemoHeader Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Header"

Specifies the finance charge memo header record.

ClosedAtDate Date

Specifies the closed at date.

CumAmount Decimal

Specifies the cumulated amount that can be modified.

OnProcessFinChrgMemoHeaderOnAfterFinChrgTermsGet

Raised after finance charge terms are retrieved when processing the finance charge memo header.

[IntegrationEvent(False,False)]
local procedure OnProcessFinChrgMemoHeaderOnAfterFinChrgTermsGet(var FinanceChargeMemoLine: Record "Finance Charge Memo Line"; var FinanceChargeTerms: Record "Finance Charge Terms")

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line record.

FinanceChargeTerms Table Microsoft.Sales.FinanceCharge."Finance Charge Terms"

Specifies the finance charge terms record.

OnCalcFinChargeOnAfterCalcFinanceChargeInterestRate

Raised after the finance charge interest rate is calculated during the finance charge calculation.

[IntegrationEvent(False,False)]
local procedure OnCalcFinChargeOnAfterCalcFinanceChargeInterestRate(var FinanceChargeMemoLine: Record "Finance Charge Memo Line"; var FinanceChargeMemoHeader: Record "Finance Charge Memo Header"; var IsHandled: Boolean)

Parameters

Name Type Description
FinanceChargeMemoLine Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Line"

Specifies the finance charge memo line record.

FinanceChargeMemoHeader Table Microsoft.Sales.FinanceCharge."Finance Charge Memo Header"

Specifies the finance charge memo header record.

IsHandled Boolean

Set to true to skip further processing.

See also