reportFinanceofficial - Microsoftderived - from the source, no model text

Report 20 "Calc. and Post VAT Settlement"

Base Application · Microsoft.Finance.VAT.Reporting

Across versions

  1. BC23-24present
  2. BC251 procedures removed
  3. BC26unchanged
  4. BC273 events added, 1 events removed
  5. BC28unchanged
  6. BC291 procedures added
  7. BC30unchanged

Neighbourhood 8 connected objects and pages

Codeunit 12 "Gen. Jnl.-Post Line" (calls, 5 links)Gen. Jnl.-Post LineCodeunit 408 "DimensionManagement" (calls, 2 links)DimensionManagementCodeunit 27 "Confirm Management" (calls)Confirm ManagementCodeunit 799 "VAT Reporting Date Mgt" (calls)VAT Reporting Date MgtBuilt-in finance reports in Business Central (Learn pages)Built-in finance reports in …Built-in VAT reports in Business Central (Learn pages)Built-in VAT reports in Busi…Calculate and Post Tax Settlement (report) (Learn pages)Calculate and Post Tax Settl…Value Added Tax management overview (Learn pages)Value Added Tax management o…

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.Finance.VAT.Reporting · captioned “Calculate and Post VAT Settlement” · BC23-30 · source at ea08af5e · facts from BC29

Properties

Property Value
Caption Calculate and Post VAT Settlement
UsageCategory ReportsAndAnalysis
ApplicationArea Basic, Suite
Permissions TableData “VAT Entry” = rimd

Events published

  • OnAfterPreReport(var VATEntry: Record "VAT Entry") (integration): Integration event raised after VAT settlement report preparation is complete. Enables custom validation and data preparation before VAT settlement processing.
  • OnAfterPostReport() (integration): Integration event raised after VAT settlement report processing is complete. Enables custom cleanup operations and finalization logic after settlement posting.
  • OnBeforeCheckPrintVATEntries(var VATEntry: Record "VAT Entry") (integration): Integration event raised before checking VAT entries for print output. Enables custom filtering and validation of VAT entries included in settlement report.
  • OnBeforePostGenJnlLineReverseChargeVAT(var GenJnlLine: Record "Gen. Journal Line"; var VATEntry: Record "VAT Entry"; var VATAmount: Decimal; var VATAmountAddCurr: Decimal) (integration): Integration event raised before posting general journal line for reverse charge VAT settlement. Enables custom amount calculations and journal line modifications for reverse charge scenarios.
  • OnBeforePreReport(var VATPostingSetup: Record "VAT Posting Setup"; PostSettlement: Boolean; GLAccountSettle: Record "G/L Account"; var DocNo: Code[20]) + BC27 − BC27 (integration): Integration event raised before VAT settlement report execution begins. Enables custom setup validation and parameter modification before settlement processing starts.
  • OnBeforeCloseVATEntriesOnPostSettlement(var VATEntry: Record "VAT Entry"; NextVATEntryNo: Integer; var IsHandled: Boolean) (integration): Integration event raised before closing VAT entries during settlement posting. Enables custom validation and modification of VAT entries before they are marked as closed.
  • OnAfterIncrementGenPostingType(OldGenPostingType: Enum "General Posting Type"; var NewGenPostingType: Enum "General Posting Type") (integration): Integration event raised after incrementing general posting type during VAT settlement processing. Enables custom logic for posting type progression and settlement sequence control.
  • OnClosingGLAndVATEntryOnAfterGetRecordOnAfterSetVATEntryFilters(VATPostingSetup: Record "VAT Posting Setup"; var VATEntry: Record "VAT Entry"; var VATEntry2: Record "VAT Entry") (integration): Integration event raised after setting VAT entry filters during settlement processing. Enables custom filter modifications and VAT entry selection logic for closing operations.
  • OnCloseVATEntriesOnAfterPostGenJnlLineReverseChargeVATSales(var VATEntry: Record "VAT Entry"; GenJnlLine: Record "Gen. Journal Line"; var GenJnlPostLine: Codeunit "Gen. Jnl.-Post Line"; VATPostingSetup: Record "VAT Posting Setup"; PostSettlement: Boolean; var ReversingEntry: Boolean; DocNo: Code[20]; PostingDate: Date; var GenJnlLine2: Record "Gen. Journal Line") (integration): Integration event raised after posting general journal line for reverse charge VAT sales during settlement. Enables custom processing and validation after reverse charge VAT entries are posted.
  • OnClosingGLAndVATEntryOnAfterGetRecordOnNormalVATOnAfterVATEntrySetFilter(VATPostingSetup: Record "VAT Posting Setup"; VATType: enum "General Posting Type"; var VATEntry: Record "VAT Entry"; FindFirstEntry: Boolean) (integration): Integration event raised after setting VAT entry filters for normal VAT processing during settlement. Enables custom filter adjustments and VAT entry selection logic for normal VAT scenarios.
  • OnClosingGLAndVATEntryOnAfterGetRecordOnSalesTaxOnAfterVATEntrySetFilter(VATPostingSetup: Record "VAT Posting Setup"; VATType: enum "General Posting Type"; var VATEntry: Record "VAT Entry"; FindFirstEntry: Boolean) (integration): Integration event raised after setting VAT entry filters for sales tax processing during settlement. Enables custom filter adjustments and VAT entry selection logic for sales tax scenarios.
  • OnPostGenJnlLineOnBeforeGenJnlPostLineRun(var GenJnlLine: Record "Gen. Journal Line") (integration): Integration event raised before running general journal posting line during VAT settlement. Enables custom validation and modification of journal lines before posting to General Ledger.
  • OnAfterCopyAmounts(var GenJournalLine: Record "Gen. Journal Line"; var VATEntry: Record "VAT Entry") (integration): Integration event raised after copying amounts from VAT entry to general journal line. Enables custom amount calculations and journal line adjustments during settlement processing.
  • OnVATPostingSetupOnAfterOnPostDataItem(GenJnlLine: Record "Gen. Journal Line"; PostSettlement: Boolean) + BC27 (integration): Integration event raised after processing VAT posting setup data item during settlement. Enables custom finalization logic and data validation after VAT posting setup processing.
  • OnVATPostingSetupOnPostDataItemOnBeforePostSettlement(var GenJnlLine: Record "Gen. Journal Line") + BC27 (integration): Integration event raised before posting settlement entry during VAT posting setup processing. Enables custom validation and modification of journal lines before settlement posting.

Procedures

  • InitializeRequest(NewStartDate: Date; NewEndDate: Date; NewPostingDate: Date; NewDocNo: Code[20]; NewSettlementAcc: Code[20]; ShowVATEntries: Boolean; Post: Boolean) − BC25: InitializeRequest with “VAT Date” default to “Posting Date”
  • InitializeRequest(NewStartDate: Date; NewEndDate: Date; NewPostingDate: Date; NewVATDate: Date; NewDocNo: Code[20]; NewSettlementAcc: Code[20]; ShowVATEntries: Boolean; Post: Boolean) − BC25: InitializeRequest with specified “VAT Date”
  • InitializeRequest2(NewUseAmtsInAddCurr: Boolean): Initializes the report to use amounts in additional reporting currency. Sets flag for currency conversion in VAT settlement calculations.
  • SetInitialized(NewInitialized: Boolean): Sets the initialization status for the VAT settlement report. Controls whether the report parameters have been properly configured.

Plus 11 local procedures.

Triggers

OnPostReport, OnPreReport, OnInitReport

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

Countries that replace it

AU, BE, ES, IT, NO

Documented on Microsoft Learn

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

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: "report", object_name: "Calc. and Post VAT Settlement"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.

Evidence 5 sources