Skip to main content

Velox Module Library

Summary

This document catalogs the modules and module-like building blocks available in the velox repository. It is part of the internal Velox Product Knowledge Base (PKB), not end-user documentation.

Velox source code is the authority for this document. A "module" in this document means one of the following source-visible concepts:

  • A persisted TvxModule descendant, normally saved in a Velox configuration table.
  • A design-time creation class that creates a persisted module variant, such as file definition subtypes.
  • A flow action item that is not a top-level module, but is a user-selectable building block inside a flow.
  • A runtime/log module class that is persisted to the log database or exported in configuration archives.

Where the code exposes an enum value or old conversion path but no concrete class, form mapping, or runtime implementation was found, this document says that explicitly.

Source Basis

Primary source locations used for this module library:

  • Classes\vxModule.pas - base module lifecycle, module persistence, module relations, templates, logs, log files, and transport logs.
  • Classes\Tools\vxTypes.pas - module type, file type, database type, transport type, execution type, action type, logging, and output enums.
  • Classes\Tools\vxCommon.pas - module type name/table mapping, old class conversion, and transport display helpers.
  • Classes\GUI\vxFormManager.pas - Designer form mapping for module classes.
  • Classes\GUI\vxTreeNodes.pas - Designer module tree grouping and module class resolution.
  • Classes\vxSetup.pas, Classes\vxFolder.pas, Classes\vxDBCon.pas, Classes\vxFileCon.pas - general setup, folder, database connection, and file connection modules.
  • Classes\vxDataDef.pas, Classes\vxDBDef.pas, Classes\vxFileDef*.pas, Classes\vxFileEngine*.pas - data definitions and file engines.
  • Classes\vxActionMan.pas, Classes\vxMap.pas, Classes\vxReport.pas, Classes\vxSQLScript.pas, Classes\vxScriptlet.pas, Classes\vxVariableGroup.pas, Classes\vxVariables.pas, Classes\vxAPI.pas - flows, action items, maps, reports, scripts, variables, and APIs.
  • Classes\Transports\*.pas - transport base class and protocol-specific transport modules.
  • Classes\Service\vxManagerScheduler.pas, Classes\Service\vxManagerMonitor.pas, Classes\Service\vxManagerTransportIn.pas, Classes\Service\vxManagerTransportOut.pas, Classes\Service\vxManagerREST.pas - runtime orchestration of flows and transports.
  • Forms\*.pas, Forms\*.dfm, Forms\Transports\*.pas - Designer configuration UI for modules and flow action items.

Module Model

Catalog Rules

  • TvxModule.New sets the table, description, default module name, and default properties for most module classes.
  • GetTableForModuleType in Classes\Tools\vxCommon.pas maps user-visible module class names to configuration tables, except for setup, logs, and configuration templates, which use source-specific paths.
  • GetFormClassForModuleType in Classes\GUI\vxFormManager.pas identifies the Designer configuration form for most top-level modules.
  • File definition subtypes (TvxFileDefFlat, TvxFileDefXML, TvxFileDefEDI, TvxFileDefExcel, TvxFileDefJSON) are explicitly described in code comments as design-time creation classes. Runtime code commonly loads file definitions as TvxFileDef and uses FileType.
  • Flow action items are child components of TvxActionMan. They are user-selectable work steps, but they are not top-level module records.
  • TvxTransportType contains AS2, but no TvxTransportAS2* class, Designer form, or table mapping was found in the inspected source.

Supported Module Types

The source-visible top-level module type enum is TvxModuleType in Classes\Tools\vxTypes.pas:

EnumDisplay nameMain class or familyNotes
fmtSetupSetupTvxSetupGeneral Setup singleton-style module.
fmtFolderFolderTvxFolderOrganizes modules and stores a module mask.
fmtDBConDB ConnectionTvxDBConDatabase connection module.
fmtFileConFile ConnectionTvxFileConFile/folder path, pattern, and audit/error/transport folder module.
fmtDBDefDB DefinitionTvxDBDefData definition backed by database data views.
fmtFileDefFile DefinitionTvxFileDef*File data definition. Subtypes cover flat, XML, EDI, Excel, JSON.
fmtInboundTransportInbound TransportTvxTransport*In, TvxTransportIMAP, TvxTransportPOPRuntime receives/downloads inbound payloads.
fmtOutboundTransportOutbound TransportTvxTransport*Out, TvxTransportSMTPRuntime sends outbound payloads.
fmtReportReportTvxReportReportBuilder-backed report module.
fmtSQLScriptSQL ScriptTvxSQLScriptNamed SQL script associated with a database connection.
fmtScriptletScriptletTvxScriptletReusable PascalScript block.
fmtMapMapTvxMapSource-to-destination mapping module.
fmtFlowFlowTvxActionManFormerly called Action. Orchestrates source items and action items.
fmtAPIAPITvxAPIAPI/OpenAPI grouping module linked to REST flows.
fmtVariableGroupVariableTvxVariableGroupPersisted group of TvxVariable values.

General And Organization Modules

ModulePurposeConfigurationInputsOutputsRuntime behaviourRelated propertiesExampleSources
TvxModuleBase persisted configuration unit for most Velox concepts.Base fields include FID, folder FID, module name, description, version, active/archive state, template, relations, and module notes.Database rows, imported templates, streamed module data.Saved module rows, module relations, exported module templates, logs.Provides New, LoadModule, AddModule, SaveModule, DeleteModule, ExportModule, Import, relation saving, locking, and child handling.FID, FolderFID, ModuleName, ModuleType, ModuleTypeEnum, Table, Active, Archived, ModuleNotes, Template.A TvxDBCon or TvxActionMan inherits this lifecycle and sets its own table in New.Classes\vxModule.pas
TvxSetup / General SetupStores product-wide Velox configuration.Email/SMTP, OAuth/key vault, API service URL and SSL, web URL/path, proxy, default file path, debug flags, service state, service users, transport retry defaults, report processing flags.User edits from General Setup; service startup loads gSetup; APIs/transports/email read setup values.Runtime defaults and flags used by Designer, VeloxService, VeloxAPIService, transports, reports, email, and logs.TvxSetup.CreateAndLoad loads setup during executable startup. Reload refreshes mode-dependent values. Service/API workers use setup before synchronising managers.SMTPActive, SMTPServer, SMTPAuthType, DefaultFilePath, TransportMaxAttempts, VeloxAPIPort, VeloxAPIEnableSSL, ServiceState, SafeReportProcessing, ReloadModuleOnError, CacheManualActions.New defaults API domain to localhost, API port to 8359, SMTP port to 587, and module name to Setup.Classes\vxSetup.pas, Forms\frmSetupGeneral.pas
TvxFolderOrganizes modules in the Designer tree.Folder name, parent folder, and a module mask controlling what module types belong in the folder.User-created folders and module moves.Updated folder rows and updated folder references on child modules.On delete, child module rows in multiple tables are reparented to the deleted folder's parent. On save, folder names are propagated to relation rows.ModuleMask; inherited FolderFID, ModuleName.A new folder defaults its mask to folders, file connections, data definitions, transports, reports, scripts, scriptlets, maps, and flows.Classes\vxFolder.pas, Forms\frmSetupFolder.pas
TvxConfigTemplateInternal archive/export wrapper for module export/import.Included modules, main module, name suffix, import file, main-module-only flag.Selected module and related modules from export paths; imported configuration archive files.Exported configuration template files; imported module records.Recursively includes folders and dependencies such as data definitions, file connections, transports, maps, reports, scripts, APIs, and variables when exporting. Not mapped by GetTableForModuleType as a normal user module.ModuleToExport, ModuleClass, ImportFileName, NameSuffix, MainModuleOnly, ConfigTemplateIncluded.Exporting a flow includes its source definitions and referenced map/report/transport modules unless main-module-only is set.Classes\vxConfigTemplate.pas, Forms\frmConfigTemplateImporter.pas

Connection Modules

ModulePurposeConfigurationInputsOutputsRuntime behaviourRelated propertiesExampleSources
TvxDBCon / DB ConnectionDefines a reusable database connection.Database type, hostname, database, authentication, credentials, provider/ODBC/ADO options, SQL dialect, alias behaviour, transaction settings, pooling bounds, certificate/trust options.Connection settings, credentials, and optional OtherParams.TvxSQLConnection instances used by data definitions, SQL scripts, reports, maps, and custom SQL actions.ConnectDatabase, DisconnectDatabase, TestConnect, transaction methods, and SQL connection pool integration. Password is encrypted via property setter.ConnectionType, Hostname, Database, SQLAuthType, Username, Password, DisconnectAfterUse, MaxConnections, DisableTransactions, TrustCertificate, TransIsolationForWriting, TransIsolationForReading.Supported database enum values are Microsoft SQL Server, Oracle, MySQL, PostgreSQL, IBM DB2, ADO, and ODBC.Classes\vxDBCon.pas, Classes\Tools\vxTypes.pas, Forms\frmSetupDBCon.pas
TvxFileCon / File ConnectionDefines file locations, patterns, naming, and post-processing folders.File name/pattern, main folder, audit/transport/error/issue/duplicate/temp folders, counter, safe naming, wait time, inbound naming mode.Incoming filenames, file streams, generated file names, action locals, default file path tags.Local file paths for data definitions and transports; audit/error/transport moves; log file events.Handles file matching, copy/move, audit/error/issue/transport moves, safe filenames, counter increments, and transport file lists.FileName, FilePattern, FileDir, AuditDir, TransportDir, ErrorDir, IssueDir, DuplicateDir, TempDir, EnableCounter, UniqueFileName, EnsureSafeFileName, WaitFor, InboundFileNaming.A new file connection defaults FilePattern to *, folders under <DEFAULTDIR>, unique file names on, and safe filenames on.Classes\vxFileCon.pas, Forms\frmSetupFileCon.pas

Data Definition Modules

ModulePurposeConfigurationInputsOutputsRuntime behaviourRelated propertiesExampleSources
TvxDataDefAbstract base for data definitions.Data module, DB links, file connection link, trim/truncate string flags.DB connections, file connections, ReportBuilder data views, API request/response references.Open datasets, saved datasets/files, database commits, copied data views.Creates and manages the TvxdaDataModule, source DB links, file connections, transaction boundaries, and OpenData/SaveData lifecycle used by maps, reports, and flows.FileConFIDS, DisableStringTrim, TruncateStrings, DataModule, DBCons, FileCon, Request, Response.TvxDBDef and TvxFileDef share this base so a flow source item can point at either database or file data.Classes\vxDataDef.pas
TvxDefModuleBase module for modules that have source and/or destination data definitions.Source/destination FIDs and definition types.Source and destination data definition modules.Temporary source/destination instances for design/test paths and saved module relations.Manages source/destination references for map/report-style modules, creates temporary source/destination data definitions, and records child module relations.SourceType, SourceFIDS, DestType, DestFIDS, Source, Dest.TvxMap and TvxReport inherit this source/destination handling.Classes\vxDefModule.pas
TvxDBDef / DB DefinitionDefines data views over database data.Data module metadata, DB connections, ID/update field options, custom ID field/value.Database connection modules and data view definitions.Open database datasets, saved database changes, generated SQL scripts.Opens DB data, saves data, updates custom ID fields, commits or rolls back via linked DB connections, and can create blank/default DB definitions.UpdateIDFields, CustomIDField, CustomIDValue, inherited DB links.CreateBlankDBDef creates a default _Blank DB definition linked to _Data if it is missing.Classes\vxDBDef.pas, Forms\frmSetupDBDef.pas
TvxFileDef / File Definition baseDefines the structure and read/write rules for file data.File type plus flat/XML/JSON/EDI/Excel settings, file connection, data module metadata, schema assignments, encoding, delimiters, validation flags.File connection, source files, schemas/templates, data views.Loaded datasets from files, written files, blank XML/JSON documents, MIME type, file events.Creates a file engine by FileType, loads or saves file data, auto-designs data views, handles schema processing, and maps file data into Velox datasets.FileType, Delimited, Delimiter, RecDelimiter, FileEncoding, JSONSchema, XSDSchema, ExcelTemplate, SegmentTerminator, ElementDelimiter, ValidateXML, IgnoreInvalidLines.CreateFileEngine creates flat, XML, EDI, Excel, or JSON engines from the FileType enum.Classes\vxFileDef.pas, Classes\vxFileEngine*.pas
TvxFileDefFlat / Flat File DefinitionDesign-time class for flat file definitions.Flat-file properties inherited from TvxFileDef: delimiter, quote, row delimiter, encoding, header row, invalid-line behaviour.Delimited or fixed-width text files.Dataset rows and written flat files.Sets FileType to fftFlatFile before inherited creation. Runtime may load as TvxFileDef.Inherited flat properties such as Delimited, Delimiter, RecDelimiter, PrintHeaderRow, TrimStrings.New module description is Flat File Def.Classes\vxFileDefFlat.pas, Forms\frmSetupFileDefFlat.pas
TvxFileDefXML / XML File DefinitionDesign-time class for XML file definitions.XSD schema, schema root, namespace behaviour, validation, XML prolog, nil/type flags, DTD allowance.XML files and optional XSD schema.Dataset rows and generated XML files.Sets FileType to fftXMLFile; TvxFileDef handles schema loading, blank XML creation, and XML engine use.XSDSchema, SchemaLocation, SchemaRootNodeName, ValidateXML, ResolveExternals, IncludeXMLProlog, UseXSINilForNulls.New module description is XML File Def.Classes\vxFileDefXML.pas, Forms\frmSetupFileDefXML.pas
TvxFileDefEDI / EDI File DefinitionDesign-time class for EDI file definitions.Segment, element, sub-element, and escape characters.EDI files.Dataset rows and written EDI-formatted files.Sets FileType to fftEDIFile; TvxFileDef selects TvxEDIFileEngine.SegmentTerminator, ElementDelimiter, SubElementDelimiter, EscapeChar.New module description is EDI File Def; default delimiters come from TvxFileDef.New.Classes\vxFileDefEDI.pas, Forms\frmSetupFileDefEDI.pas
TvxFileDefExcel / Excel File DefinitionDesign-time class for Excel definitions.Excel format, auto-detect flag, password, template file.Excel XLS/XLSX files.Dataset rows and written Excel files.Sets FileType to fftExcelFile; TvxFileDef selects TvxExcelFileEngine.ExcelAutoDetectFormat, ExcelFormat, ExcelPassword, ExcelTemplate.New module description is Excel File Def; default format is XLSX with auto-detect enabled.Classes\vxFileDefExcel.pas, Forms\frmSetupFileDefExcel.pas
TvxFileDefJSON / JSON File DefinitionDesign-time class for JSON definitions.JSON schema and root type.JSON files.Dataset rows and written JSON files.Sets FileType to fftJSONFile; TvxFileDef selects TvxJSONFileEngine.JSONSchema, JSONRootType.New module description is JSON File Def. _NEW JSON sources exist, but the active module class is Classes\vxFileDefJSON.pas.Classes\vxFileDefJSON.pas, Classes\vxFileEngineJSON.pas, Forms\frmSetupFileDefJSON.pas

Transformation, Reporting, Scripting, And API Modules

ModulePurposeConfigurationInputsOutputsRuntime behaviourRelated propertiesExampleSources
TvxMap / MapMaps data from a source definition to a destination definition.Source/destination definitions from TvxDefModule, view maps, field maps, formulas/events, global script.Source data definition data, destination data definition, map scripts, variables/scriptlets.Destination records/files/database rows and map logs.Execute creates data sources, synchronizes views/fields, runs view and field events, maps primary keys, OnMap, AfterMap, linked data, start/end events, and optionally saves destination data.Initialised, GlobalScript, SourceFID, DestFID, SaveData, UseXSINilForNulls, ViewMap, FieldMap.A map action opens source and destination data definitions, then calls TvxMap.Execute.Classes\vxMap.pas, Classes\vxDefModule.pas, Forms\frmSetupMaps.pas
TvxReport / ReportDefines a ReportBuilder report over a data definition.Source definition, ReportBuilder report module, no-data and split settings, error/font options.Data definition data and report layout.Screen/printer/file/email/API stream output, log file events.Links source data module into TvxPPReport, runs ReportBuilder print/export, and exposes hooks used by report action output destinations. Supporting ReportBuilder classes include TvxppField, TppvxDataPipeline, and registered TppMasterFieldLink support for Velox field metadata, protected pipeline access, and master/detail field-link streaming.NoDataPrint, SplitReport, IgnoreReportErrors, EmbedFontsPDF.A report action can export a report to PDF/HTML/image/Excel/RTF or write to an API response stream.Classes\vxReport.pas, Classes\vxPPReport.pas, Classes\vxppDB.pas, Forms\frmSetupReports.pas
TvxSQLScript / SQL ScriptStores reusable SQL text associated with a database connection.Script text, DB connection FID, editor last position.SQL text and linked DB connection.Executed SQL by consumers; module relation to DB connection.Loads DB connection lazily, stores a script, and records relations to its DB connection. CreateDefaultSQLScript creates _Site Settings when missing.Script, DBConFIDS, LastPosition.Default _Site Settings points at the _Data DB connection by default module GUID.Classes\vxSQLScript.pas, Forms\frmSetupSQLScript.pas
TvxScriptlet / ScriptletStores reusable PascalScript code for includes and shared script logic.Script text and editor last position.PascalScript text; references to scriptlets and variable groups discovered by include usage.Cached scriptlet text used by maps, transports, custom scripts, and script-aware modules.Thread-safe script text access, global cache invalidation on save/delete, relation saving for includes.Script, ScriptText, LastPosition.CreateDefaultScriptlet creates _Common if missing.Classes\vxScriptlet.pas, Classes\vxScripter.pas, Forms\frmSetupScriptlet.pas
TvxVariableGroup / Variable GroupStores a persisted set of variables.Child TvxVariable records with codes, values, param types, operators, encryption flag.User variable definitions and runtime reads by tags/scripts.Variable values available through group code and global variable group cache.Provides thread-safe variable access, variable code uniqueness checks, cache invalidation on save/delete, and module relation support.Child TvxVariable.Code, Value, ParamType, Encrypted; group GroupCode.A non-default group code is VARIABLEGROUPPREFIX plus module name with spaces removed.Classes\vxVariableGroup.pas, Classes\vxVariables.pas, Forms\frmSetupParams.pas
TvxActionMan / FlowOrchestrates data sources, action items, schedules, monitors, REST endpoints, linked flows, logging, and transport registration.Source manager, action items, file monitor, schedule, REST properties, retry settings, logging/email flags, max threads, linked actions.Data definitions, maps, reports, SQL/script actions, transport modules, API request/response, files, schedule/monitor/API triggers.Destination data, reports, outbound transport events, logs, API responses, linked flow execution.Execute opens sources, executes action items, commits/rolls back database data, audits/errors files, saves/sends logs, and handles linked actions and retry settings. Runtime managers synchronize active flows.ScheduleType, SourceManager, FileMonitor, RESTEndpoint, RESTMethod, RequestDef, ResponseDef, MaxThreadsPerAction, AutoRetry, SaveLogStatuses, SendLogStatuses.A scheduled flow has ScheduleType=fstSchedule; an API flow has REST endpoint, method, request/response definitions, and status-code settings.Classes\vxActionMan.pas, Forms\frmSetupActions.pas
TvxAPI / APIGroups REST flows and generates/exports OpenAPI schema metadata.Version, descriptions, prod/test URLs, groups, terms, contact, license, documentation URL, OpenAPI schema text, linked action items.Linked REST-enabled flows (TvxActionMan), API metadata, request/response definitions from flows.OpenAPI schema file/text and API action relation rows.Builds TOpenAPIDocument, saves API-action links, exports schema, and records module relations to linked flows.Version, APIDescription, GroupDescription, ProdURL, TestURL, Groups, OpenAPISchema, child TvxAPIActionItem.Linking a flow to an API creates a TvxAPIActionItem with ActionFID, action name, and active flag.Classes\vxAPI.pas, Forms\frmSetupAPI.pas, Classes\Service\vxManagerREST.pas

Transport Modules

Shared Transport Base

All concrete transport modules inherit directly or indirectly from TvxTransport.

Shared areaSource-supported details
PurposeSends or receives payloads over a protocol and records transport/file log events.
Common configurationHost, port, auth type, username/password, OAuth fields, private key, TLS/SSL certificate options, connect/read timeouts, direction.
Common inputsFileDef, FileCon, current filename, action FID/name, locals, optional script items, setup defaults.
Common outputsDownloaded files, sent files/messages, TvxLogFile, TvxLogTransport, transport trace/HTTP comms, status notifications.
Runtime behaviourStartDownload, StartSend, Execute, protocol-specific connect/list/get/put, tag processing, SSL/OAuth setup, log notification, module relation saving.
Important propertiesHost, Port, AuthType, Username, Password, ClientId, Tenant, Scope, SSLClientType, SSLTLSType, ReadTimeOut, ConnectTimeOut, Direction.
SourceClasses\Transports\vxTransport.pas, Forms\Transports\*.pas.

Concrete Transport Catalog

ModulePurposeConfigurationInputsOutputsRuntime behaviourRelated propertiesExampleSources
TvxTransportFTPIn / FTP InDownloads files from an FTP server.FTP host/port/path, credentials/auth, SSL/TLS, transfer type, passive/list options, after-receive action.Remote FTP directory and file pattern from linked file connection.Local downloaded files and log file download events.Lists remote files, downloads to memory first, saves locally, then deletes/leaves/moves remote file based on AfterReceiving.Base FTP Path, TransferType, UsePassive, UseLIST, AfterReceiving, MoveToFolderName, ControlTimeOut, TransferTimeOut.Default port is 21 and default after-receive action is delete.Classes\Transports\vxTransportFTP.pas, Classes\Transports\vxTransportFTPIn.pas, Forms\Transports\frmTransportFTPIn.pas
TvxTransportFTPOut / FTP OutUploads files to an FTP server.FTP host/path, transfer mode, optional temporary filename, indicator file, move-after-send.Current outbound file from file connection/transport log.Uploaded remote file, optional indicator file, optional remote move.Opens current file, uploads via FTP, optionally renames from temporary filename, moves after send, and creates indicator file.AfterSendingMove, AfterSendingIndicator, IndicatorFileName, UseTemporaryFileName; base FTP properties.A file can be uploaded under a GUID temp name and renamed to its final name after transfer.Classes\Transports\vxTransportFTPOut.pas, Forms\Transports\frmTransportFTPOut.pas
TvxTransportSFTPIn / SFTP InDownloads files from an SFTP server.SFTP host/port/path, auth type, password/private key, server key storage, SFTP version, after-receive action.Remote SFTP directory and linked file connection pattern.Local downloaded files and log file download events.Connects with SecureBridge, lists remote files, downloads to a temporary file, moves to final local path, then deletes/leaves/moves remote file based on AfterReceiving.Path, MoveToFolderName, SFTPVersion, SFTPAuthType, AfterReceiving, ControlTimeOut, TransferTimeOut.Default port is 22; default auth is password; default after-receive action is delete.Classes\Transports\vxTransportSFTP.pas, Classes\Transports\vxTransportSFTPIn.pas, Forms\Transports\frmTransportSFTPIn.pas
TvxTransportSFTPOut / SFTP OutUploads files to an SFTP server.SFTP host/path/auth/key settings, optional temporary filename, indicator file, move-after-send.Current outbound file.Uploaded remote file, optional indicator file, optional remote move.Uploads current file via SecureBridge SFTP, optionally renames temp file, optionally moves remote file and writes indicator file.AfterSendingMove, AfterSendingIndicator, IndicatorFileName, UseTemporaryFileName; base SFTP properties.Indicator file upload writes an empty stream to the parsed indicator filename.Classes\Transports\vxTransportSFTPOut.pas, Forms\Transports\frmTransportSFTPOut.pas
TvxTransportLANIn / LAN InReceives files from a shared/local folder.UNC path, after-receive handling, optional wait time.Folder path and file pattern.Local downloaded/copied files and log file events.Processes UNC tags, verifies directory, waits for file lock release, moves or copies matching files through a temporary file into the local file connection path.UNCPath, AfterReceiving, WaitFor.If AfterReceiving is delete, source file is moved; if leave, source file is copied.Classes\Transports\vxTransportLAN.pas, Classes\Transports\vxTransportLANIn.pas, Forms\Transports\frmTransportLANIn.pas
TvxTransportLANOut / LAN OutSends files to a shared/local folder.UNC path.Current outbound file.Copied file in target shared folder.Processes UNC tags, verifies directory, waits for source file lock release, then copies the file.UNCPath.Fails with a log error if the target shared folder does not exist.Classes\Transports\vxTransportLANOut.pas, Forms\Transports\frmTransportLANOut.pas
TvxTransportHTTPIn / HTTP InReceives content from an HTTP endpoint and saves it as a file.URL in Host, method, headers, auth/OAuth, SSL, redirect/protocol options, optional response script.HTTP endpoint, request content if present, headers, local file connection.Downloaded response body saved as a file and log event.Executes GET/PUT/POST/PATCH/DELETE, checks 2xx response by default, or runs script item for custom response handling. Filename can come from response headers before falling back to file connection naming.ReceiveMethod, AfterReceiving, Headers, HandleRedirects, ProtocolVersion, base auth/SSL fields.A GET response with status 2xx is saved locally when no custom script handles it.Classes\Transports\vxTransportHTTP.pas, Classes\Transports\vxTransportHTTPIn.pas, Forms\Transports\frmTransportHTTPIn.pas
TvxTransportHTTPOut / HTTP OutSends a file to an HTTP endpoint.URL in Host, method, headers, form encoding, content field name, auth/OAuth, SSL, response script.Current outbound file and optional headers/form fields.HTTP request, response content/log status, optional response-script handling.Sends using PUT/POST/PATCH/DELETE. Supports raw, URL-encoded, or multipart form encoding paths in code. By default treats non-2xx response as error.SendMethod, FormEncoding, ContentFieldName, Headers, base auth/SSL fields.Default method is POST and default multipart content field name is file.Classes\Transports\vxTransportHTTPOut.pas, Forms\Transports\frmTransportHTTPOut.pas
TvxTransportIMAP / IMAP InReceives email attachments from an IMAP mailbox.Mailbox, after-receive handling, move-to mailbox, SASL/OAuth, from/to filters, SSL/auth.IMAP mailbox messages and attachment filename pattern.Saved attachment files and log file download events.Connects to IMAP, selects mailbox, processes messages/attachments, optionally marks read, moves, deletes, or leaves messages. Includes mailbox maintenance helpers.Mailbox, AfterReceiving, MoveToMailBox, UseSASL, FromEmail, ToEmail.ClearEmailFromMailBox deletes all email from the configured mailbox after connecting.Classes\Transports\vxTransportIMAP.pas, Forms\Transports\frmTransportIMAP.pas
TvxTransportPOP / POP InReceives email attachments from a POP3 mailbox.Host/port/auth/SSL, after-receive handling, SASL/OAuth.POP messages and attachment filename pattern.Saved attachment files and log file download events.Checks message count, retrieves each message, saves matching attachments, and deletes messages when configured to delete after receiving.AfterReceiving, UseSASL; base auth/SSL fields.Default port is 110 and default after-receive action is delete.Classes\Transports\vxTransportPOP.pas, Forms\Transports\frmTransportPOP.pas
TvxTransportSMTP / SMTP OutSends email with optional file attachment/body content.To/CC/BCC, subject, read receipt, text/HTML body, load attachment to body flags. SMTP connection settings are inherited from base/setup/email helpers.Current outbound file, tag data resolved from source data, recipients/body fields.Email message and optional attachment/body content.Resolves tags into transport log data, creates an email, attaches or embeds the current file depending on settings, and sends through TvxEmail.ToEmail, CcEmail, BccEmail, Subject, ReadReceipt, LoadAttachmentToBody, LoadAttachmentToHTMLBody, BodyText, BodyHTML.Subject and recipient fields can contain local/data tags that are resolved before outbound transport execution.Classes\Transports\vxTransportSMTP.pas, Forms\Transports\frmTransportSMTP.pas
TvxTransportMSMQIn / MSMQ InReceives messages from Microsoft Message Queuing.Queue visibility/name, transaction flag, direct format name, delivery/auth flags, read timeout, after-receive enum.MSMQ queue messages.Message body saved to local file and log file event.Opens queue for receive, reads messages with timeout, saves message body to file using detected string encoding.Base MSMQ Visibility, QueueName, DeliveryType, UseTransaction, UseDirectFormatName, DirectFormatType, Authenticate; ReadTimeOut, AfterReceiving.Default read timeout is 1 second.Classes\Transports\vxTransportMSMQ.pas, Classes\Transports\vxTransportMSMQIn.pas, Forms\Transports\frmTransportMSMQIn.pas
TvxTransportMSMQOut / MSMQ OutSends file content to Microsoft Message Queuing.Queue visibility/name, transaction flag, direct format name, delivery/auth flags.Current outbound file.MSMQ message with file content as body and filename as label.Opens queue for sending, loads current file text, assigns message label, and sends with transaction option.Base MSMQ properties.Uses MQ_SINGLE_MESSAGE when UseTransaction is true.Classes\Transports\vxTransportMSMQOut.pas, Forms\Transports\frmTransportMSMQOut.pas
TvxTransportIBMMQIn / IBM MQ InReceives messages from IBM MQ.Queue manager/connection manager, host, queue, channel, receive buffer length, after-receive enum.IBM MQ messages.Message body saved to local file and log file event.Connects to IBM MQ, opens queue for input, waits up to configured MQ wait interval in code, reads message buffer, saves message body to file.ConnectionManager, QueueName, ChannelName, ReceiveBufferLength, AfterReceiving.Default receive buffer length is 32768.Classes\Transports\vxTransportIBMMQ.pas, Classes\Transports\vxTransportIBMMQIn.pas, Forms\Transports\frmTransportIBMMQIn.pas
TvxTransportIBMMQOut / IBM MQ OutSends file content to IBM MQ.Queue manager/connection manager, host, queue, channel.Current outbound file.IBM MQ message containing loaded file text.Connects, opens queue for output, loads file into a string, and calls MQPUT; logs IBM MQ completion/reason errors.ConnectionManager, QueueName, ChannelName.Sends message with MQFMT_STRING.Classes\Transports\vxTransportIBMMQOut.pas, Forms\Transports\frmTransportIBMMQOut.pas

Source-Visible Transport Type Without Module

ConceptSource-visible evidenceModule status
AS2 transportTvxTransportType includes fptAS2, vxTransportTypeString includes AS2, and vxTransportTypeDirection marks it as both inbound and outbound.No TvxTransportAS2 class, Designer form, table mapping, or class registration was found in the inspected source. Treat AS2 as not implemented/unclear in the current module library.

Flow Action Item Library

Flow action items are persisted as child components of TvxActionMan, not as top-level module rows. They are still part of the available Velox work library because the Designer creates them inside flows.

Action itemPurposeConfigurationInputsOutputsRuntime behaviourRelated propertiesExampleSources
TvxActionMapExecutes a map module inside a flow.Action FID points to TvxMap; source and destination TvxDefItem links.Source data definition and destination data definition.Mapped destination data and logs.Loads map, opens source and destination data, then calls TvxMap.Execute.Inherited ActionFID, Source, Dest, IgnoreEmptySourceData.Added by aAddMapExecute in flow setup.Classes\vxActionMan.pas, Forms\frmSetupActions.pas
TvxActionReportExecutes a report module inside a flow.Action FID points to TvxReport; output destination/type/details, attachments, BCC, miscellaneous subject.Source data definition and report layout.Screen/printer/file/email/API stream report output.Loads report, opens source data, configures ReportBuilder output, then prints/exports/emails/streams.OutputDest, OutputType, OutputDetails, FileDetails, Attachment, Miscellaneous, BCCEmail.In REST execution, report output can be written to ActionMan.Response.ContentStream.Classes\vxActionMan.pas
TvxActionShellExecuteRuns an external command or shell command.Command line, params, credentials/domain, delay, shell-execute flag, wait flag.Process command/params, optional tags, optional user credentials.External process side effects and flow log status.Executes command, optionally impersonates a supplied user in background/non-main thread paths, optionally waits and checks exit code.CommandLine, Params, Username, Userpass, Domain, UseShellExecute, WaitforProcess, Delay.<FILENAME> can be replaced from a file monitor source when present.Classes\vxActionMan.pas
TvxActionTransportRegisters outbound files for transport sending.Action FID and transport class point to an outbound transport module; source file definition.File definition/file connection and current file or written transport file list.TvxLogTransport events later processed by the outbound transport manager.Loads transport, passes action/log settings, resolves tag data, and creates transport log events for files to be sent.TransportClass, inherited ActionFID, Source.If source file definition was written by an earlier action, each written file is registered for transport.Classes\vxActionMan.pas, Classes\Service\vxManagerTransportOut.pas
TvxActionAPISource-visible variant of TvxActionTransport intended to link HTTP outbound transports to API calls.Inherits transport action configuration and sets TransportClass to TvxTransportHTTPOut in its constructor.Same source file definition inputs as TvxActionTransport.Same transport-log outputs as TvxActionTransport if created.No separate execute method, current class registration, or main flow setup creation path was found; runtime behaviour appears inherited but active product availability is unconfirmed.Inherited TransportClass, ActionFID, Source.The source comment describes it as linking HTTP outbound transports to an action to call an API. Treat as source-visible/incomplete until a creation path is confirmed.Classes\vxActionMan.pas
TvxActionSQLExecutes an inline/custom SQL command.SQL command text and source DB definition.DB definition and SQL text with tags.Executed SQL and SQL log entries.Opens source DB data, starts transaction, processes tags, logs SQL, and executes the SQL command.SQLCommand, inherited Source.Cancels if the SQL command is blank or no DB definition is assigned.Classes\vxActionMan.pas
TvxActionFileRouterRoutes a source file to a configured file connection based on script route items.Source file definition and child TvxRouteItem scripts linked to destination file connections.Current file and route scripts.Copied file to target file connection folder, route/highlight logs.Opens source data, compiles and executes route scripts until one returns true, then copies file to the route's file connection.Child TvxRouteItem.FileConFIDS, FileConName, Formula.If no route handles the file, a highlight log states that it was not routed.Classes\vxActionMan.pas, Classes\vxRouteItem.pas
TvxActionSubActionCalls another flow as a sub-flow.Action FID points to another TvxActionMan.Parent flow locals/test state and target flow.Sub-flow execution and parent action total status.Loads target flow, marks it as subaction, passes locals, executes, then clears target locals.Inherited ActionFID.Added by aAddSubActionExecute in flow setup.Classes\vxActionMan.pas
TvxActionCustomScriptRuns a custom PascalScript action.Source data definition and child TvxScriptItem formula.Source data, script, action context.Script side effects, log status, optional failure if script result is false.Opens source data, assigns source/action to script item, executes formula with default true, and logs script errors.Child TvxScriptItem.Formula, CompiledStatus, inherited Source.The first script item result controls success/failure.Classes\vxActionMan.pas, Classes\vxScriptItem.pas

Action Enum Values Without Confirmed Concrete Implementation

TvxActionType contains values that were not matched to a current concrete action class or Designer add action in the inspected source. They may be legacy, planned, or implemented indirectly, but this was not determinable from the current pass.

Enum valueDisplay textSource-visible status
fatPluginCall PluginNo concrete TvxAction... class or setup creation path found.
fatCommitTransaction CommitOld class conversion maps TFloActionCommitTran to TvxActionCommitTran, but no current class definition was found. Database commits occur inside TvxActionMan.Execute.
fatDisconnectDB DisconnectEnum value exists; no current concrete action class found.
fatWaitFileWait for FileEnum value exists; no current concrete action class found.
fatInboundTransportInbound TransportEnum value exists; no current concrete flow action class found. Inbound transports are top-level transport modules orchestrated by TvxTransportManagerIn.

Runtime And Log Modules

Module/conceptPurposeConfigurationInputsOutputsRuntime behaviourRelated propertiesExampleSources
TvxLog / LogRecords flow, transport, and system execution details.Log type, action/transport references, flags for SQL/HTTP/file/transport comms, status fields, start/end dates.Runtime messages, exceptions, SQL, HTTP trace, file events, transport events.Log rows, log items, log files, transport logs, API response content.Tracks status, creates log file/transport events, sends notifications, records SQL/HTTP/trace details, exposes event notifications for UI.Num, Status, StatusType, LogType, ActionFIDS, TransportFIDS, StartDate, EndDate, LogSQL, LogHTTPComms, LogFileData, LogTransportComms.Log.Error changes status and records exception detail.Classes\vxModule.pas, Forms\frmLogs.pas, Forms\frmManageLogs.pas
TvxLogFile / Log FileRecords a file event associated with a log.File event type, file path/name, hash/data, data definition/file connection references.File reads/writes/downloads/audit/error/transport moves.File log rows and UI-visible file event history.Created by file connection, file definition, transport, and report actions through log helper methods.FileEvent, file reference fields, file data/hash fields.A transport download calls Log.CreateLogFileEventDownload.Classes\vxModule.pas, Classes\vxFileCon.pas, transport classes
TvxLogTransport / Transport LogRecords outbound transport queue state and metadata.Action/transport/file definition/file connection references, file path/name/ext, attempts, status, next attempt date, notification/logging flags.Outbound transport action registration and transport manager queue processing.Transport queue records, attempt updates, sent/failed status, notification context.Created by TvxActionTransport, loaded by TvxTransportManagerOut, and updated as outbound transport attempts run.ActionFID, TransportFID, TransportClass, FileDefFID, FileConFID, Status, Attempts, TransportMaxAttempts, NextAttemptDate.If sending fails, attempts and next attempt date control retry behaviour.Classes\vxModule.pas, Classes\Service\vxManagerTransportOut.pas
TvxSystemLogRuntime system logging helper derived from log classes.System log context and messages.Service/designer system events.System log messages.Used through global logging paths; exact persistence boundaries require inspecting call sites for each system log use.Source-visible through Classes.RegisterClass(TvxSystemLog).VeloxService writes event/system messages during startup/shutdown.Classes\vxModule.pas, Classes\Tools\vxEventLogger.pas, service main classes

Important Business Concepts

ConceptMeaning in codeMain modules/classesRelated UIRuntime behaviourSource locations
VeloxProduct composed of Designer, VeloxService, VeloxAPIService, shared modules, configuration database, log database, and data database access.TvxModule, TvxSetup, TvxActionMan, service managers.TMain and setup/manage forms.Designer edits modules; services execute flows and transports.Velox.dpr, VeloxService.dpr, VeloxAPIService.dpr
General SetupProduct-wide settings and defaults.TvxSetup, global gSetup.TSetupGeneral.Loaded at executable/service startup and read by many modules.Classes\vxSetup.pas, Forms\frmSetupGeneral.pas
FoldersLogical organization and filtering for modules.TvxFolder, Designer tree nodes.TSetupFolder.Reparents child modules on folder deletion.Classes\vxFolder.pas, Classes\GUI\vxTreeNodes.pas
Flows, formerly ActionsRuntime orchestration unit.TvxActionMan, TvxActionItem descendants.TSetupActions, linked action setup form.Manual/scheduled/monitor/API/linked execution.Classes\vxActionMan.pas, service managers
Data ConnectionsReusable DB/file connectivity.TvxDBCon, TvxFileCon.TSetupDBCon, TSetupFileCon.DB connection pooling, file movement, tag-resolved file paths.Classes\vxDBCon.pas, Classes\vxFileCon.pas
Supported databasesDatabase connection enum lists Microsoft SQL Server, Oracle, MySQL, PostgreSQL, IBM DB2, ADO, ODBC.TRegConType, TvxDBCon.DB connection setup.SQL connection creation and ReportBuilder data settings use the enum mappings.Classes\Tools\vxTypes.pas, Classes\vxDBCon.pas
Data DefinitionsStructured data view definitions over DB or file data.TvxDBDef, TvxFileDef, TvxDefItem, TvxDefManager.DB/file definition setup forms.Open/save/commit data in maps, reports, scripts, APIs, transports.Classes\vxDataDef.pas, Classes\vxDBDef.pas, Classes\vxFileDef.pas
Supported file typesFlat file, XML, EDI, Excel, JSON. TvxFileType also contains old fftExcel.TvxFileDef*, TvxFileEngine*.File definition setup forms.File engines read/write file datasets.Classes\Tools\vxTypes.pas, Classes\vxFileDef.pas
TransportsInbound/outbound movement of files/messages.TvxTransport and concrete transport classes.Transport setup forms.Inbound manager polls/schedules inbound transports; outbound manager processes transport log queue.Classes\Transports\*.pas, transport managers
ReportsReportBuilder documents over data definitions.TvxReport, TvxPPReport, TvxActionReport.Report setup and report designer.Prints, exports, emails, or streams reports.Classes\vxReport.pas, Classes\vxActionMan.pas
VariablesPersisted or runtime values used by tags and scripts.TvxVariableGroup, TvxVariable, TvxVariableList.Setup parameters/variables form.Thread-safe access by scripts, maps, and tags.Classes\vxVariableGroup.pas, Classes\vxVariables.pas
SQL ScriptsNamed SQL text modules.TvxSQLScript.SQL script setup/editor.Linked to DB connection and used by scripts or manual tooling; exact consumers vary by call site.Classes\vxSQLScript.pas, Forms\frmSetupSQLScript.pas
ScriptletsShared PascalScript snippets.TvxScriptlet, TvxScripter.Scriptlet setup/editor.Cached and included by script-aware modules.Classes\vxScriptlet.pas, Classes\vxScripter.pas
MapsSource-to-destination transformations.TvxMap, TvxViewMap, TvxFieldMap.Map setup/designer.Runs scripts/events and writes destination data.Classes\vxMap.pas
APIsAPI/OpenAPI grouping and REST-enabled flows.TvxAPI, TvxAPIActionItem, TvxRESTManager.API setup, flow REST settings.API service dispatches matching endpoints to flow threads.Classes\vxAPI.pas, Classes\Service\vxManagerREST.pas
OrchestrationSchedules, file monitors, inbound transport schedules, outbound queue, REST execution.TvxScheduleManager, TvxMonitorManager, TvxTransportManagerIn, TvxTransportManagerOut, TvxRESTManager.Flow setup and service manager/status UI.Services synchronize active module configuration into runtime execution items.Classes\Service\vxManager*.pas
LogsExecution history and diagnostic detail.TvxLog, TvxLogItem, TvxLogFile, TvxLogTransport.Logs/manage logs/transport logs.Created by flows, data definitions, transports, services, and reports.Classes\vxModule.pas, log forms
Transport LogsOutbound transport queue and history.TvxLogTransport, TvxTransportManagerOut.Manage transport logs.Created during flow execution, later consumed by outbound sender threads.Classes\vxModule.pas, Classes\Service\vxManagerTransportOut.pas
Auto SearchRuntime/search parameter links in data definitions.TvxAutoSearchItem, TvxDefItem.Setup parameter/editor UI.Assigns criteria values to data views using locals/action context.Classes\vxDataDef.pas, Forms\frmSetupParams.pas
Route ItemsScripted routing branches inside file router action.TvxRouteItem, TvxActionFileRouter.Flow action setup.Route script decides destination file connection for a file.Classes\vxRouteItem.pas, Classes\vxActionMan.pas
Issues and business transactionsCode references order/invoice/ASN issue types and VxData-style issue/event tables.TvxIssues, TvxIssueType enum.Related UI is not fully determined from the inspected source.Used by flow/map scripts and logging concepts; full VxData business schema is outside this repository.Classes\vxIssues.pas, Classes\Tools\vxTypes.pas

Persistence Tables

Source-visible module table mapping:

Module classConfiguration table
TvxActionManVX_ACTION
TvxAPIVX_API
TvxDBConVX_DBCON
TvxDBDefVX_DBDEF
TvxFileConVX_FILECON
TvxFileDefEDI, TvxFileDefExcel, TvxFileDefFlat, TvxFileDefXML, TvxFileDefJSONVX_FILEDEF
TvxFolderVX_FOLDER
TvxMapVX_MAP
TvxReportVX_REPORT
TvxScriptletVX_SCRIPTLET
TvxSQLScriptVX_SQLSCRIPT
TvxVariableGroupVX_VARIABLE
Concrete TvxTransport* modulesVX_TRANSPORT
TvxSetupVX_SETUP set in TvxSetup.New; not present in GetTableForModuleType.
TvxLog and log childrenLog database tables managed through TvxLog code paths; GetTableForModuleType does not map logs as a normal configuration module.

Configuration And Serialization

  • Module configuration is streamed through ReportBuilder/Delphi component streaming and persisted through TvxModule descendants.
  • Module data is stored in configuration database tables and relation rows.
  • Export/import uses TvxModuleTemplate and TvxConfigTemplate.
  • File data formats include flat text, XML, EDI, Excel, and JSON through file engines.
  • API schema output uses OpenAPI model classes, Neon JSON serialization, and TvxAPI.OpenAPISchema.
  • Runtime API request/response handling uses TvxAPIRequest and TvxAPIResponse.
  • Logs and transport logs are persisted through TvxLog, TvxLogFile, and TvxLogTransport.

Open Questions And Unclear Areas

  • AS2 is present in TvxTransportType but no concrete AS2 module implementation was found.
  • Flow action enum values for Call Plugin, Transaction Commit, DB Disconnect, Wait for File, and Inbound Transport do not have confirmed current concrete classes in the inspected source.
  • TvxConfigTemplate is a TvxModule descendant, but it behaves as an archive/export wrapper rather than an ordinary user-created configuration table module.
  • The exact current consumer paths for TvxSQLScript outside setup/editor and relation/export logic should be checked before documenting it as a runtime execution feature.
  • The VxData business schema concepts such as order/invoice/ASN issues are referenced in code, but the authoritative schema is outside this velox repository.