Table "VAT Amount Line"
Stores VAT calculation data for document lines grouped by VAT identifier and calculation parameters. Supports VAT amount calculations, invoice discounts, and non-deductible VAT processing for sales and purchase transactions.
Remarks
Primary temporary table used during VAT calculations and document posting. Key integrations: VAT posting, invoice posting, sales/purchase document processing. Extensibility: Multiple integration events for VAT calculation customization.
Properties
| Name | Value |
|---|---|
| Caption | VAT Amount Line |
| DataClassification | CustomerContent |
| TableType | Temporary |
Fields
| Name | Type | Description |
|---|---|---|
| "VAT %" | Decimal | VAT percentage used for VAT calculations on document lines with this VAT identifier. |
| "VAT Base" | Decimal | Total net amount excluding VAT for document lines with this VAT identifier. |
| "VAT Amount" | Decimal | Total VAT amount calculated for document lines with this VAT identifier. |
| "Amount Including VAT" | Decimal | Total amount including VAT for document lines with this VAT identifier. |
| "VAT Identifier" | Code[20] | VAT identifier that groups VAT posting setup combinations for VAT calculations. |
| "Line Amount" | Decimal | Total line amount before invoice discount for document lines with this VAT identifier. |
| "Inv. Disc. Base Amount" | Decimal | Base amount eligible for invoice discount calculation. |
| "Invoice Discount Amount" | Decimal | Invoice discount amount applied to document lines with this VAT identifier. |
| "VAT Calculation Type" | Enum Microsoft.Foundation.Enums."Tax Calculation Type" | VAT calculation method determining how VAT is calculated for this VAT identifier. |
| "Tax Group Code" | Code[20] | Tax group code used for sales tax calculations in US localization. |
| Quantity | Decimal | Quantity sum for document lines with this VAT identifier. |
| Modified | Boolean | Indicates whether VAT amounts have been manually modified from calculated values. |
| "Use Tax" | Boolean | Indicates use tax calculation for reverse charge VAT scenarios. |
| "Calculated VAT Amount" | Decimal | System-calculated VAT amount before manual adjustments or VAT differences. |
| "VAT Difference" | Decimal | Difference between calculated VAT amount and manually entered VAT amount. |
| Positive | Boolean | Indicates whether line amounts are positive values for proper VAT calculation grouping. |
| "Includes Prepayment" | Boolean | Indicates whether this VAT amount line includes prepayment amounts. |
| "VAT Clause Code" | Code[20] | VAT clause code providing additional VAT reporting information and text. |
| "Tax Category" | Code[10] | Tax category code used for electronic VAT reporting and compliance. |
| "Pmt. Discount Amount" | Decimal | Payment discount amount applied to document lines with this VAT identifier. |
| "Non-Deductible VAT %" | Decimal | Non-deductible VAT percentage for partial VAT deduction scenarios. |
| "Non-Deductible VAT Base" | Decimal | VAT base amount that is non-deductible according to non-deductible VAT percentage. |
| "Non-Deductible VAT Amount" | Decimal | VAT amount that is non-deductible and will be added to the expense or asset cost. |
| "Calc. Non-Ded. VAT Amount" | Decimal | System-calculated non-deductible VAT amount before manual adjustments. |
| "Deductible VAT Base" | Decimal | VAT base amount that is deductible and can be claimed back from tax authorities. |
| "Deductible VAT Amount" | Decimal | VAT amount that is deductible and can be claimed back from tax authorities. |
| "Non-Deductible VAT Diff." | Decimal | Difference between calculated and manually entered non-deductible VAT amounts. |
| 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
CheckVATDifference
Validates VAT difference against maximum allowed VAT difference limits.
procedure CheckVATDifference(NewCurrencyCode: Code[10]; NewAllowVATDifference: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| NewCurrencyCode | Code[10] |
Currency code for VAT difference validation |
| NewAllowVATDifference | Boolean |
Whether VAT differences are allowed on this document |
InsertLine
Inserts or updates VAT amount line with calculated amounts, combining with existing line if found.
procedure InsertLine(): Boolean
Returns
| Type | Description |
|---|---|
| Boolean |
True if line was successfully inserted or updated, false if amounts are zero |
GetLine
Retrieves VAT amount line by sequential number from the recordset.
procedure GetLine(Number: Integer)
Parameters
| Name | Type | Description |
|---|---|---|
| Number | Integer |
Sequential number (1 for first line, otherwise next line) |
VATAmountText
Generates descriptive text for VAT amount display based on VAT percentage.
procedure VATAmountText(): Text[30]
Returns
| Type | Description |
|---|---|
| Text[30] |
Formatted text showing VAT percentage or generic "VAT Amount" text |
GetTotalLineAmount
Calculates total line amount across all VAT amount lines with optional VAT subtraction.
procedure GetTotalLineAmount(SubtractVAT: Boolean; CurrencyCode: Code[10]): Decimal
Parameters
| Name | Type | Description |
|---|---|---|
| SubtractVAT | Boolean |
Whether to subtract VAT from line amounts |
| CurrencyCode | Code[10] |
Currency code for rounding precision |
Returns
| Type | Description |
|---|---|
| Decimal |
Total line amount |
GetTotalVATAmount
Calculates total VAT amount across all VAT amount lines in the recordset.
procedure GetTotalVATAmount(): Decimal
Returns
| Type | Description |
|---|---|
| Decimal |
Total VAT amount |
GetTotalInvDiscAmount
Calculates total invoice discount amount across all VAT amount lines.
procedure GetTotalInvDiscAmount(): Decimal
Returns
| Type | Description |
|---|---|
| Decimal |
Total invoice discount amount |
GetTotalInvDiscBaseAmount
Calculates total invoice discount base amount with optional VAT subtraction.
procedure GetTotalInvDiscBaseAmount(SubtractVAT: Boolean; CurrencyCode: Code[10]): Decimal
Parameters
| Name | Type | Description |
|---|---|---|
| SubtractVAT | Boolean |
Whether to subtract VAT from base amounts |
| CurrencyCode | Code[10] |
Currency code for rounding precision |
Returns
| Type | Description |
|---|---|
| Decimal |
Total invoice discount base amount |
GetTotalVATBase
Calculates total VAT base amount across all VAT amount lines.
procedure GetTotalVATBase(): Decimal
Returns
| Type | Description |
|---|---|
| Decimal |
Total VAT base amount |
GetTotalAmountInclVAT
Calculates total amount including VAT across all VAT amount lines.
procedure GetTotalAmountInclVAT(): Decimal
Returns
| Type | Description |
|---|---|
| Decimal |
Total amount including VAT |
GetTotalVATDiscount
Calculates total VAT discount amount based on rounding differences.
procedure GetTotalVATDiscount(CurrencyCode: Code[10]; NewPricesIncludingVAT: Boolean): Decimal
Parameters
| Name | Type | Description |
|---|---|---|
| CurrencyCode | Code[10] |
Currency code for rounding precision |
| NewPricesIncludingVAT | Boolean |
Whether prices include VAT |
Returns
| Type | Description |
|---|---|
| Decimal |
Total VAT discount amount |
GetAnyLineModified
Checks whether any VAT amount line has been manually modified.
procedure GetAnyLineModified(): Boolean
Returns
| Type | Description |
|---|---|
| Boolean |
True if any line has Modified flag set |
SetInvoiceDiscountAmount
Distributes invoice discount amount proportionally across VAT amount lines.
procedure SetInvoiceDiscountAmount(NewInvoiceDiscount: Decimal; NewCurrencyCode: Code[10]; NewPricesIncludingVAT: Boolean; NewVATBaseDiscPct: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| NewInvoiceDiscount | Decimal |
Total invoice discount to distribute |
| NewCurrencyCode | Code[10] |
Currency code for calculations |
| NewPricesIncludingVAT | Boolean |
Whether prices include VAT |
| NewVATBaseDiscPct | Decimal |
VAT base discount percentage |
SetInvoiceDiscountPercent
Applies invoice discount percentage to VAT amount lines with proportional distribution.
procedure SetInvoiceDiscountPercent(NewInvoiceDiscountPct: Decimal; NewCurrencyCode: Code[10]; NewPricesIncludingVAT: Boolean; CalcInvDiscPerVATID: Boolean; NewVATBaseDiscPct: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| NewInvoiceDiscountPct | Decimal |
Invoice discount percentage to apply |
| NewCurrencyCode | Code[10] |
Currency code for calculations |
| NewPricesIncludingVAT | Boolean |
Whether prices include VAT |
| CalcInvDiscPerVATID | Boolean |
Whether to calculate discount per VAT identifier |
| NewVATBaseDiscPct | Decimal |
VAT base discount percentage |
CalcLineAmount
Calculates line amount after subtracting invoice discount from original line amount.
procedure CalcLineAmount(): Decimal
Returns
| Type | Description |
|---|---|
| Decimal |
Net line amount used for VAT calculations |
CalcVATFields
Recalculates VAT amounts and VAT base based on current line amount and VAT parameters.
procedure CalcVATFields(NewCurrencyCode: Code[10]; NewPricesIncludingVAT: Boolean; NewVATBaseDiscPct: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| NewCurrencyCode | Code[10] |
Currency code for rounding precision |
| NewPricesIncludingVAT | Boolean |
Whether prices include VAT |
| NewVATBaseDiscPct | Decimal |
VAT base discount percentage |
GetBaseLCY
Converts VAT base amount from foreign currency to local currency using exchange rate.
procedure GetBaseLCY(PostingDate: Date; CurrencyCode: Code[10]; CurrencyFactor: Decimal): Decimal
Parameters
| Name | Type | Description |
|---|---|---|
| PostingDate | Date |
Date for exchange rate lookup |
| CurrencyCode | Code[10] |
Foreign currency code |
| CurrencyFactor | Decimal |
Currency exchange factor |
Returns
| Type | Description |
|---|---|
| Decimal |
VAT base amount in local currency |
GetAmountLCY
Calculates VAT amount in local currency by converting from foreign currency.
procedure GetAmountLCY(PostingDate: Date; CurrencyCode: Code[10]; CurrencyFactor: Decimal): Decimal
Parameters
| Name | Type | Description |
|---|---|---|
| PostingDate | Date |
Date for exchange rate lookup |
| CurrencyCode | Code[10] |
Foreign currency code |
| CurrencyFactor | Decimal |
Currency exchange factor |
Returns
| Type | Description |
|---|---|
| Decimal |
VAT amount in local currency |
DeductVATAmountLine
Deducts amounts from current VAT amount lines using corresponding lines from another recordset.
procedure DeductVATAmountLine(var VATAmountLineDeduct: Record "VAT Amount Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLineDeduct | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" |
VAT amount line recordset containing amounts to deduct |
UpdateLines
Updates VAT amount lines with calculated VAT amounts and totals based on currency, pricing settings, and tax configuration. Performs comprehensive VAT calculations including sales tax processing and currency conversions.
procedure UpdateLines(var TotalVATAmount: Decimal; Currency: Record Currency; CurrencyFactor: Decimal; PricesIncludingVAT: Boolean; VATBaseDiscountPercHeader: Decimal; TaxAreaCode: Code[20]; TaxLiable: Boolean; PostingDate: Date)
Parameters
| Name | Type | Description |
|---|---|---|
| TotalVATAmount | Decimal |
Total VAT amount calculated across all lines |
| Currency | Table Microsoft.Finance.Currency.Currency |
Currency record for rounding and conversion |
| CurrencyFactor | Decimal |
Currency exchange factor for conversion calculations |
| PricesIncludingVAT | Boolean |
Whether prices include VAT or VAT is calculated on top |
| VATBaseDiscountPercHeader | Decimal |
VAT base discount percentage from document header |
| TaxAreaCode | Code[20] |
Tax area code for sales tax calculations |
| TaxLiable | Boolean |
Whether the transaction is liable for sales tax |
| PostingDate | Date |
Posting date for tax rate determination |
CopyFromPurchInvLine
Copies VAT-related fields from posted purchase invoice line to create VAT amount line for analysis or reporting.
procedure CopyFromPurchInvLine(PurchInvLine: Record "Purch. Inv. Line")
Parameters
| Name | Type | Description |
|---|---|---|
| PurchInvLine | Table Microsoft.Purchases.History."Purch. Inv. Line" |
Posted purchase invoice line containing VAT information to copy |
CopyFromPurchCrMemoLine
Copies VAT-related fields from posted purchase credit memo line to create VAT amount line for analysis or reporting.
procedure CopyFromPurchCrMemoLine(PurchCrMemoLine: Record "Purch. Cr. Memo Line")
Parameters
| Name | Type | Description |
|---|---|---|
| PurchCrMemoLine | Table Microsoft.Purchases.History."Purch. Cr. Memo Line" |
Posted purchase credit memo line containing VAT information to copy |
CopyFromSalesInvLine
Copies VAT-related fields from posted sales invoice line to create VAT amount line for analysis or reporting.
procedure CopyFromSalesInvLine(SalesInvoiceLine: Record "Sales Invoice Line")
Parameters
| Name | Type | Description |
|---|---|---|
| SalesInvoiceLine | Table Microsoft.Sales.History."Sales Invoice Line" |
Posted sales invoice line containing VAT information to copy |
CopyFromSalesCrMemoLine
Copies VAT-related fields from posted sales credit memo line to create VAT amount line for analysis or reporting.
procedure CopyFromSalesCrMemoLine(SalesCrMemoLine: Record "Sales Cr.Memo Line")
Parameters
| Name | Type | Description |
|---|---|---|
| SalesCrMemoLine | Table Microsoft.Sales.History."Sales Cr.Memo Line" |
Posted sales credit memo line containing VAT information to copy |
Events
OnAfterCalcLineAmount
[IntegrationEvent(False,False)]
local procedure OnAfterCalcLineAmount(var VATAmountLine: Record "VAT Amount Line"; var LineAmount: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| LineAmount | Decimal |
OnAfterCheckVATDifference
[IntegrationEvent(False,False)]
local procedure OnAfterCheckVATDifference(VATAmountLine: Record "VAT Amount Line"; NewCurrencyCode: Code[10]; NewAllowVATDifference: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| NewCurrencyCode | Code[10] | |
| NewAllowVATDifference | Boolean |
OnAfterCopyFromPurchInvLine
[IntegrationEvent(False,False)]
local procedure OnAfterCopyFromPurchInvLine(var VATAmountLine: Record "VAT Amount Line"; PurchInvLine: Record "Purch. Inv. Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| PurchInvLine | Table Microsoft.Purchases.History."Purch. Inv. Line" |
OnAfterCopyFromPurchCrMemoLine
[IntegrationEvent(False,False)]
local procedure OnAfterCopyFromPurchCrMemoLine(var VATAmountLine: Record "VAT Amount Line"; PurchCrMemoLine: Record "Purch. Cr. Memo Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| PurchCrMemoLine | Table Microsoft.Purchases.History."Purch. Cr. Memo Line" |
OnAfterCopyFromSalesInvLine
[IntegrationEvent(False,False)]
local procedure OnAfterCopyFromSalesInvLine(var VATAmountLine: Record "VAT Amount Line"; SalesInvoiceLine: Record "Sales Invoice Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| SalesInvoiceLine | Table Microsoft.Sales.History."Sales Invoice Line" |
OnAfterCopyFromSalesCrMemoLine
[IntegrationEvent(False,False)]
local procedure OnAfterCopyFromSalesCrMemoLine(var VATAmountLine: Record "VAT Amount Line"; SalesCrMemoLine: Record "Sales Cr.Memo Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| SalesCrMemoLine | Table Microsoft.Sales.History."Sales Cr.Memo Line" |
OnAfterSalesTaxCalculateCalculateTax
[IntegrationEvent(False,False)]
local procedure OnAfterSalesTaxCalculateCalculateTax(var VATAmountLine: Record "VAT Amount Line"; Currency: Record Currency; TaxAreaCode: Code[20]; TaxLiable: Boolean; PostingDate: Date; CurrencyFactor: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| Currency | Table Microsoft.Finance.Currency.Currency | |
| TaxAreaCode | Code[20] | |
| TaxLiable | Boolean | |
| PostingDate | Date | |
| CurrencyFactor | Decimal |
OnAfterSalesTaxCalculateReverseCalculateTax
[IntegrationEvent(False,False)]
local procedure OnAfterSalesTaxCalculateReverseCalculateTax(var VATAmountLine: Record "VAT Amount Line"; Currency: Record Currency; TaxAreaCode: Code[20]; TaxLiable: Boolean; PostingDate: Date; CurrencyFactor: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| Currency | Table Microsoft.Finance.Currency.Currency | |
| TaxAreaCode | Code[20] | |
| TaxLiable | Boolean | |
| PostingDate | Date | |
| CurrencyFactor | Decimal |
OnAfterVATAmountText
[IntegrationEvent(True,False)]
local procedure OnAfterVATAmountText(VATPercentage: Decimal; FullCount: Integer; var Result: Text[30])
Parameters
| Name | Type | Description |
|---|---|---|
| VATPercentage | Decimal | |
| FullCount | Integer | |
| Result | Text[30] |
OnBeforeGetTotalVATAmount
[IntegrationEvent(False,False)]
local procedure OnBeforeGetTotalVATAmount(var VATAmountLine: Record "VAT Amount Line"; var VATAmount: Decimal; var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| VATAmount | Decimal | |
| IsHandled | Boolean |
OnInsertLineOnAfterValidatePositive
[IntegrationEvent(False,False)]
local procedure OnInsertLineOnAfterValidatePositive(var VATAmountLine: Record "VAT Amount Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" |
OnInsertLineOnBeforeInsert
[IntegrationEvent(False,False)]
local procedure OnInsertLineOnBeforeInsert(var VATAmountLine: Record "VAT Amount Line"; var FromVATAmountLine: Record "VAT Amount Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| FromVATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" |
OnInsertLineOnBeforeModify
[IntegrationEvent(False,False)]
local procedure OnInsertLineOnBeforeModify(var VATAmountLine: Record "VAT Amount Line"; FromVATAmountLine: Record "VAT Amount Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| FromVATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" |
OnInsertLine
[IntegrationEvent(False,False)]
local procedure OnInsertLine(var VATAmountLine: Record "VAT Amount Line"; var IsHandled: Boolean; var Result: Boolean; var SkipZeroVatAmounts: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| IsHandled | Boolean | |
| Result | Boolean | |
| SkipZeroVatAmounts | Boolean |
OnUpdateLinesOnAfterCalcVATAmount
[IntegrationEvent(False,False)]
local procedure OnUpdateLinesOnAfterCalcVATAmount(var VATAmountLine: Record "VAT Amount Line"; PrevVATAmountLine: Record "VAT Amount Line"; var Currency: Record Currency; VATBaseDiscountPerc: Decimal; PricesIncludingVAT: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| PrevVATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| Currency | Table Microsoft.Finance.Currency.Currency | |
| VATBaseDiscountPerc | Decimal | |
| PricesIncludingVAT | Boolean |
OnUpdateLinesOnAfterCalcAmountIncludingVATNormalVAT
[IntegrationEvent(False,False)]
local procedure OnUpdateLinesOnAfterCalcAmountIncludingVATNormalVAT(var VATAmountLine: Record "VAT Amount Line"; PrevVATAmountLine: Record "VAT Amount Line"; var Currency: Record Currency; VATBaseDiscountPerc: Decimal; PricesIncludingVAT: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| PrevVATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| Currency | Table Microsoft.Finance.Currency.Currency | |
| VATBaseDiscountPerc | Decimal | |
| PricesIncludingVAT | Boolean |
OnUpdateLinesOnBeforeCalcSalesTaxVatBase
[IntegrationEvent(False,False)]
local procedure OnUpdateLinesOnBeforeCalcSalesTaxVatBase(var VATAmountLine: Record "VAT Amount Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" |
OnUpdateLinesOnAfterCalcVATBase
[IntegrationEvent(False,False)]
local procedure OnUpdateLinesOnAfterCalcVATBase(var VATAmountLine: Record "VAT Amount Line"; Currency: Record Currency; PricesIncludingVAT: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| Currency | Table Microsoft.Finance.Currency.Currency | |
| PricesIncludingVAT | Boolean |
OnUpdateLinesOnAfterCalcVATBaseSalesTax
[IntegrationEvent(False,False)]
local procedure OnUpdateLinesOnAfterCalcVATBaseSalesTax(var VATAmountLine: Record "VAT Amount Line"; Currency: Record Currency; PricesIncludingVAT: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| Currency | Table Microsoft.Finance.Currency.Currency | |
| PricesIncludingVAT | Boolean |
OnAfterCalcVATFields
[IntegrationEvent(False,False)]
local procedure OnAfterCalcVATFields(var VATAmountLine: Record "VAT Amount Line"; NewPricesIncludingVAT: Boolean; NewVATBaseDiscPct: Decimal; Currency: Record Currency)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| NewPricesIncludingVAT | Boolean | |
| NewVATBaseDiscPct | Decimal | |
| Currency | Table Microsoft.Finance.Currency.Currency |
OnBeforeCalcVATFields
[IntegrationEvent(False,False)]
local procedure OnBeforeCalcVATFields(var VATAmountLine: Record "VAT Amount Line"; var NewVATBaseDiscPct: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| NewVATBaseDiscPct | Decimal |
OnDeductVATAmountLineOnBeforeModify
[IntegrationEvent(False,False)]
local procedure OnDeductVATAmountLineOnBeforeModify(var VATAmountLine: Record "VAT Amount Line"; VATAmountLineDeduct: Record "VAT Amount Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| VATAmountLineDeduct | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" |
OnBeforeGetVATBaseDiscountPerc
[IntegrationEvent(False,False)]
local procedure OnBeforeGetVATBaseDiscountPerc(var VATAmountLine: Record "VAT Amount Line"; VATBaseDiscountPerc: Decimal; var NewVATBaseDiscountPerc: Decimal; var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| VATBaseDiscountPerc | Decimal | |
| NewVATBaseDiscountPerc | Decimal | |
| IsHandled | Boolean |
OnUpdateLinesOnAfterInitPrevVATAmountLine
[IntegrationEvent(False,False)]
local procedure OnUpdateLinesOnAfterInitPrevVATAmountLine(var PrevVATAmountLine: Record "VAT Amount Line"; Currency: Record Currency; PricesIncludingVAT: Boolean; var VATBaseDiscountPerc: Decimal; var VATAmountLine: Record "VAT Amount Line")
Parameters
| Name | Type | Description |
|---|---|---|
| PrevVATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| Currency | Table Microsoft.Finance.Currency.Currency | |
| PricesIncludingVAT | Boolean | |
| VATBaseDiscountPerc | Decimal | |
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" |
OnApplyNonDeductibleVATOnBeforeModify
[IntegrationEvent(False,False)]
local procedure OnApplyNonDeductibleVATOnBeforeModify(var VATAmountLine: Record "VAT Amount Line"; NonDeductibleVAT: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| NonDeductibleVAT | Decimal |
OnCopyFromPurchInvLineOnAfterSetLineAmount
[IntegrationEvent(False,False)]
local procedure OnCopyFromPurchInvLineOnAfterSetLineAmount(var VATAmountLine: Record "VAT Amount Line"; var PurchInvLine: Record "Purch. Inv. Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| PurchInvLine | Table Microsoft.Purchases.History."Purch. Inv. Line" |
OnCopyFromPurchCrMemoLineOnAfterSetLineAmount
[IntegrationEvent(False,False)]
local procedure OnCopyFromPurchCrMemoLineOnAfterSetLineAmount(var VATAmountLine: Record "VAT Amount Line"; var PurchCrMemoLine: Record "Purch. Cr. Memo Line")
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| PurchCrMemoLine | Table Microsoft.Purchases.History."Purch. Cr. Memo Line" |
OnBeforeUpdateLines
[IntegrationEvent(False,False)]
procedure OnBeforeUpdateLines(var VATAmountLine: Record "VAT Amount Line"; var TotalVATAmount: Decimal; Currency: Record Currency; CurrencyFactor: Decimal; PricesIncludingVAT: Boolean; VATBaseDiscountPercHeader: Decimal; TaxAreaCode: Code[20]; TaxLiable: Boolean; PostingDate: Date; var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| TotalVATAmount | Decimal | |
| Currency | Table Microsoft.Finance.Currency.Currency | |
| CurrencyFactor | Decimal | |
| PricesIncludingVAT | Boolean | |
| VATBaseDiscountPercHeader | Decimal | |
| TaxAreaCode | Code[20] | |
| TaxLiable | Boolean | |
| PostingDate | Date | |
| IsHandled | Boolean |
OnUpdateLinesOnAfterCalcPreVATAmountline
[IntegrationEvent(False,False)]
local procedure OnUpdateLinesOnAfterCalcPreVATAmountline(var VATAmountLine: Record "VAT Amount Line"; var PreVATAmountLine: Record "VAT Amount Line"; var Currency: Record Currency; VATBaseDiscountPerc: Decimal)
Parameters
| Name | Type | Description |
|---|---|---|
| VATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| PreVATAmountLine | Table Microsoft.Finance.VAT.Calculation."VAT Amount Line" | |
| Currency | Table Microsoft.Finance.Currency.Currency | |
| VATBaseDiscountPerc | Decimal |