QlikViewQVDCatelog
February 18, 2026 · View on GitHub
A QlikView application that catalogues and measures the data volume stored across a collection of QVD (QlikView Data) files.
Overview
The QVD Catalog reads metadata from QVD files across one or more configured directories and loads it into a QlikView data model. The application gives analysts and developers a clear picture of what data is stored in their QVD layer — including field names, record counts, file sizes, and table structures — without needing to load the underlying data itself.
Features
- Scans multiple directories for QVD files (configurable in the load script)
- Extracts metadata from each QVD including:
- File name and path
- Number of records and fields
- File size and creation/modification dates
- Field names and data types
- Provides a data model suitable for building charts, tables, and dashboards
- Useful for data governance, capacity planning, and QVD layer documentation
Getting Started
Prerequisites
- QlikView Desktop (or QlikView Server for deployment)
- Read access to the directories containing your QVD files
Configuration
Before reloading the application, open the load script and locate the Configuration section at the top. Set the directories you want to scan as records in the inline table:
// ── Configuration ────────────────────────────────────────────────────────────
ScanDir:
Load * Inline[
ScanDir
C:\QlikWarehouse\RawData
C:\QlikWarehouse\Transformed
];
// Add additional paths as needed
Adjust the path variables to point to the root folders where your QVD files are stored. The application will scan sub-folders.
Running the Application
- Open
QlikView_QVD_Catelog.qvwin QlikView Desktop. - Update the directory paths in the Configuration section of the load script.
- Save the script and perform a full reload (
Ctrl+Ror File > Reload). - The data model will populate with metadata from all discovered QVD files.
Data Model
The application produces two primary tables linked by key fields.
Table — QVD File Metadata
| Field Name | Description |
|---|---|
%TableId | Surrogate key uniquely identifying each QVD table (links to Fields and Lineage tables) |
Table Full File Name | Full path and filename of the QVD file |
Table Folder | Directory path where the QVD file is located |
Table File Name | File name of the QVD without the folder path |
Table File Size | Size of the QVD file on disk in bytes |
Table QV Build No | QlikView build number used when the QVD was created |
Table Creator Doc | The QlikView document (.qvw) that created the QVD |
Table Create Date | Date the QVD file was created |
Table Create Time | Time the QVD file was created |
Table Source File Size | Size of the source data before QVD compression |
Table Name | Logical name of the table as defined in the creating script |
Table Record Byte Size | Average size of a single record in bytes |
Table No of Records | Total number of records stored in the QVD |
Table Offset | Byte offset to the start of the data section within the QVD file |
Table Length | Length of the data section within the QVD file in bytes |
Fields — QVD Field Metadata
| Field Name | Description |
|---|---|
%TableId | Foreign key linking each field record back to its parent QVD in the Table table |
FieldName | Name of the field as stored in the QVD |
%FieldID | Surrogate key uniquely identifying each field (links to the Tags table) |
Field Bit Offset | Bit offset of the field within the QVD record structure |
Field Bit Width | Number of bits used to store the field value |
Field Bias | Numeric bias applied to the field's stored values |
Field Number of Symbols | Count of distinct symbol values in the field's symbol table |
Field Offset | Byte offset to the field's symbol table within the QVD file |
Field Length | Length of the field's symbol table section in bytes |
Field Type | Data type of the field (e.g., ASCII, Integer, Real, Date) |
Field Num Decimals | Number of decimal places used for numeric formatting |
Field Use Thousands Separator | Whether the field uses a thousands separator when displayed |
Field Format | Display format mask applied to the field |
Field Dec | Decimal separator character used for the field |
Field Thou | Thousands separator character used for the field |
Tags — Field Tags
| Field Name | Description |
|---|---|
%FieldID | Foreign key linking each tag back to its parent field in the Fields table |
Field Tag | System or user-defined tag applied to the field (e.g., $date, $numeric, $ascii) |
Lineage — QVD Source Lineage
| Field Name | Description |
|---|---|
%TableId | Foreign key linking the lineage record back to its parent QVD in the Table table |
Lineage Discriminator | Identifies the source statement or connection that contributed data to the QVD |
This model can be used to build charts showing data volume by directory, tables listing all fields across all QVDs, trend analysis on QVD growth over time, and more.
Use Cases
- Data volume measurement — understand how much data is stored across your QVD layer
- Field discovery — find which QVD files contain a specific field name
- Documentation — generate a living catalogue of your QVD layer
- Capacity planning — monitor file sizes and record counts over time
- Data governance — audit the structure and content of your data lake
File Structure
QlikView_QVD_Catelog/
│
└── QlikView_QVD_Catelog.qvw # Main QlikView application
License
This project is provided as-is for internal use. See LICENSE for details.