---
id: object/codeunit/31102-cz
type: object
title: Codeunit 31102 "VAT Ctrl. Report Mgt. CZL" (CZ)
summary: Codeunit 31102 "VAT Ctrl. Report Mgt. CZL" (CZ) in the CZ country layer (Microsoft.Finance.VAT.Reporting). 9 public procedures, 27 events. Introduced in BC29, still in BC30.
tier: official
language: en
tags:
  - codeunit
  - cz layer
versions:
  introduced: "29"
  last_changed: null
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: 864b628e3ffc2fa84d960b381b49654ebaa762d45ad2fc7c70b8e4af3e4063b3
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/CZ/CoreLocalizationPack/app/Src/Codeunits/VATCtrlReportMgtCZL.Codeunit.al
    title: src/Apps/CZ/CoreLocalizationPack/app/Src/Codeunits/VATCtrlReportMgtCZL.Codeunit.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn: []
  objects: []
  features: []
  topics: []
  localizations:
    - localization/cz
  videos: []
  posts: []
  guidelines: []
object_type: codeunit
object_id: 31102
name: VAT Ctrl. Report Mgt. CZL
namespace: Microsoft.Finance.VAT.Reporting
app: CoreLocalizationPack
extends: null
first_version: "29"
last_version: "30"
present_in:
  - "29"
  - "30"
changed_in: []
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
country: CZ
counts:
  fields: 0
  procedures: 70
  events: 27
  subscribers: 0
relations:
  out: 0
  referenced_by: 0
  pages: 0
  extended_by: 0
  event_subscribers: 0
---

# Codeunit 31102 "VAT Ctrl. Report Mgt. CZL" (CZ)

> Codeunit 31102 "VAT Ctrl. Report Mgt. CZL" (CZ) in the CZ country layer (Microsoft.Finance.VAT.Reporting). 9 public procedures, 27 events. Introduced in BC29, still in BC30.

CZ country layer · Microsoft.Finance.VAT.Reporting · BC29-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Apps/CZ/CoreLocalizationPack/app/Src/Codeunits/VATCtrlReportMgtCZL.Codeunit.al) · facts from BC29

An object of the [CZ localization](../../localizations/cz.md), not part of W1.

## Properties

| Property | Value |
|---|---|
| Permissions | tabledata "VAT Entry" = rm, tabledata "VAT Posting Setup" = r, tabledata "VAT Ctrl. Report Header CZL" = rimd, tabledata "VAT Ctrl. Report Line CZL" = rimd, tabledata "VAT Ctrl. Report Section CZL" = r |

## Events published

- `OnAfterSetVATEntryFilters(var VATEntry: Record "VAT Entry"; VATStatementLine: Record "VAT Statement Line"; VATCtrlReportHeaderCZL: Record "VAT Ctrl. Report Header CZL")` (integration)
- `OnAfterCopyBufferToLine(TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary; var VATCtrlReportLineCZL: Record "VAT Ctrl. Report Line CZL")` (integration)
- `OnAfterCopyLineToBuffer(VATCtrlReportLineCZL: Record "VAT Ctrl. Report Line CZL"; var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary)` (integration)
- `OnBeforeModifyVATCtrlReportBufferForStatistics(var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary; VATCtrlReportLineCZL: Record "VAT Ctrl. Report Line CZL")` (integration)
- `OnBeforeModifyVATCtrlReportBufferForExport(var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary; VATCtrlReportLineCZL: Record "VAT Ctrl. Report Line CZL")` (integration)
- `OnBeforeInsertTempVATEntryForForPeriod(var TempVATEntry: Record "VAT Entry" temporary)` (integration)
- `OnBeforeInsertTempVATEntryForStatementLine(var TempVATEntry: Record "VAT Entry" temporary; VATStatementLine: Record "VAT Statement Line")` (integration)
- `OnBeforeInsertVATCtrlReportBuffer(VATEntry: Record "VAT Entry"; VATCtrlReportSectionCZL: Record "VAT Ctrl. Report Section CZL"; VATPostingSetup: Record "VAT Posting Setup"; CommodityCode: Code[20]; var TempVATCtrlReportEntLinkCZL: Record "VAT Ctrl. Report Ent. Link CZL" temporary; var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary; var IsHandled: Boolean)` (integration)
- `OnGetVATCtrlReportLinesOnBeforeAddVATEntryToBuffer(VATStatementLine: Record "VAT Statement Line"; VATPostingSetup: Record "VAT Posting Setup"; var VATCtrlReportSectionCZL: Record "VAT Ctrl. Report Section CZL"; var TempVATEntry: Record "VAT Entry" temporary)` (integration)
- `OnMergeVATEntryOnBeforeTempVATEntryBudgetBufferFindFirst(VATEntry: Record "VAT Entry"; var TempDocumentBudgetBuffer: Record "Budget Buffer" temporary)` (integration)
- `OnMergeVATEntryOnBeforeTempGlobalVATEntryFindSet(VATEntry: Record "VAT Entry"; var TempGlobalVATEntry: Record "VAT Entry" temporary)` (integration)
- `OnMergeVATEntryOnBeforeInsertTempVATEntryBudgetBuffer(VATEntry: Record "VAT Entry"; var TempDocumentBudgetBuffer: Record "Budget Buffer" temporary)` (integration)
- `OnGetDocumentAmountOnBeforeTempDocumentBudgetBufferFindFirst(VATEntry: Record "VAT Entry"; var TempDocumentBudgetBuffer: Record "Budget Buffer" temporary)` (integration)
- `OnGetDocumentAmountOnBeforeTempGlobalVATEntryFindSet(VATEntry: Record "VAT Entry"; var TempGlobalVATEntry: Record "VAT Entry" temporary)` (integration)
- `OnGetDocumentAmountOnBeforeInsertTempDocumentBudgetBuffer(VATEntry: Record "VAT Entry"; var TempDocumentBudgetBuffer: Record "Budget Buffer" temporary)` (integration)
- `OnInsertVATCtrlReportBufferGroupOnBeforeTempVATCtrlReportBufferCZLFindFirst(VATEntry: Record "VAT Entry"; VATPostingSetup: Record "VAT Posting Setup"; var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary)` (integration)
- `OnInsertVATCtrlReportBufferOnBeforeInsert(VATEntry: Record "VAT Entry"; VATPostingSetup: Record "VAT Posting Setup"; var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary)` (integration)
- `OnBeforeIsVATEntryCorrected(VATEntry: Record "VAT Entry"; var TempGlobalVATEntry: Record "VAT Entry" temporary; var IsCorrected: Boolean; var IsHandled: Boolean)` (integration)
- `OnBeforeGetBufferFromDocument(VATEntry: Record "VAT Entry"; SectionCode: Code[20]; var TempDropShptPostBuffer: Record "Drop Shpt. Post. Buffer" temporary; var IsHandled: Boolean)` (integration)
- `OnSplitFromSalesInvLineOnBeforeUpdateTempDropShptPostBuffer(SalesInvoiceHeader: Record "Sales Invoice Header"; SalesInvoiceLine: Record "Sales Invoice Line"; var TempDropShptPostBuffer: Record "Drop Shpt. Post. Buffer" temporary; var IsHandled: Boolean)` (integration)
- `OnSplitFromSalesCrMemoLineOnBeforeUpdateTempDropShptPostBuffer(SalesCrMemoHeader: Record "Sales Cr.Memo Header"; SalesCrMemoLine: Record "Sales Cr.Memo Line"; var TempDropShptPostBuffer: Record "Drop Shpt. Post. Buffer" temporary; var IsHandled: Boolean)` (integration)
- `OnSplitFromPurchInvLineOnBeforeUpdateTempDropShptPostBuffer(PurchInvHeader: Record "Purch. Inv. Header"; PurchInvLine: Record "Purch. Inv. Line"; var TempDropShptPostBuffer: Record "Drop Shpt. Post. Buffer" temporary; var IsHandled: Boolean)` (integration)
- `OnSplitFromPurchCrMemoLineOnBeforeUpdateTempDropShptPostBuffer(PurchCrMemoHdr: Record "Purch. Cr. Memo Hdr."; PurchCrMemoLine: Record "Purch. Cr. Memo Line"; var TempDropShptPostBuffer: Record "Drop Shpt. Post. Buffer" temporary; var IsHandled: Boolean)` (integration)
- `OnCreateBufferForExportOnBeforeTempVATCtrlReportBufferCZLFindFirst(VATCtrlReportLineCZL: Record "VAT Ctrl. Report Line CZL"; VATCtrlReportSectionCZL: Record "VAT Ctrl. Report Section CZL"; var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary)` (integration)
- `OnExportInternalDocCheckToExcelOnBeforeTempVATCtrlReportBufferCZLFindFirst(VATCtrlReportLineCZL: Record "VAT Ctrl. Report Line CZL"; var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary)` (integration)
- `OnExportInternalDocCheckToExcelOnBeforeInsertTempVATCtrlReportBufferCZL(VATCtrlReportLineCZL: Record "VAT Ctrl. Report Line CZL"; var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary)` (integration)
- `OnExportInternalDocCheckToExcelOnAfterFillExcelLine(var TempExcelBuffer: Record "Excel Buffer" temporary; TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary)` (integration)

## Procedures

- `GetVATCtrlReportLines(VATCtrlReportHeaderCZL: Record "VAT Ctrl. Report Header CZL"; StartDate: Date; EndDate: Date; VATStmTemplCode: Code[10]; VATStmName: Code[10]; ProcessType: Option Add,Rewrite; ShowMessage: Boolean; UseMergeVATEntries: Boolean)`
- `CreateBufferForStatistics(VATCtrlReportHeaderCZL: Record "VAT Ctrl. Report Header CZL"; var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary; ShowMessage: Boolean)`
- `CreateBufferForExport(VATCtrlReportHeaderCZL: Record "VAT Ctrl. Report Header CZL"; var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary; ShowMessage: Boolean; EntriesSelection: Enum "VAT Statement Report Selection")`
- `RoundVATCtrlReportBufferAmounts(var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary; Precision: Decimal)`
- `CheckMandatoryField(FieldNo: Integer; VATCtrlReportLineCZL: Record "VAT Ctrl. Report Line CZL")`
- `CloseVATCtrlReportLine(VATCtrlReportHeaderCZL: Record "VAT Ctrl. Report Header CZL"; NewCloseDocNo: Code[20]; NewCloseDate: Date)`
- `ExportInternalDocCheckToExcel(VATCtrlReportHeaderCZL: Record "VAT Ctrl. Report Header CZL"; ShowMessage: Boolean)`
- `CopyBufferToLine(TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary; var VATCtrlReportLineCZL: Record "VAT Ctrl. Report Line CZL")`
- `CopyLineToBuffer(VATCtrlReportLineCZL: Record "VAT Ctrl. Report Line CZL"; var TempVATCtrlReportBufferCZL: Record "VAT Ctrl. Report Buffer CZL" temporary)`

Plus 34 local procedures.

## Across versions

- Present in: BC29-30
- Changed (declaration) in: none

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). 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: "codeunit", object_name: "VAT Ctrl. Report Mgt. CZL")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.

A CZ country object, not part of W1: the default corpus does not have it; `bcatlas_list_countries` shows which countries the atlas has.
