Data Definition Configuration
Summary
This page documents configuration for data definitions and their child source items: TvxDataDef, TvxDBDef, TvxFileDef, TvxDefItem, TvxDefDB, TvxDefFile, and TvxAutoSearchItem. These settings describe where data comes from, how files are parsed or generated, and how related data sources and file connections are linked.
Source Code Locations
Classes\vxDataDef.pas:23 - TvxAutoSearchItem.
Classes\vxDataDef.pas:71 - TvxDefItem.
Classes\vxDataDef.pas:233 - TvxDataDef.
Classes\vxDataDef.pas:987 - TvxDataDef.New defaults.
Classes\vxDBDef.pas:17 - TvxDBDef.
Classes\vxDBDef.pas:100 - TvxDBDef.New defaults.
Classes\vxFileDef.pas:17 - TvxFileDef.
Classes\vxFileDef.pas:323 - TvxFileDef.New defaults.
Forms\frmSetupDBDefs.pas:20 - DB definition form.
Forms\frmSetupFileDefFlat.pas, frmSetupFileDefXML.pas, frmSetupFileDefEDI.pas, frmSetupFileDefExcel.pas, frmSetupFileDefJSON.pas - file definition forms.
Important Classes
TvxDataDef
TvxDBDef
TvxFileDef
TvxDefItem, TvxDefDB, TvxDefFile, TvxDefManager
TvxAutoSearchItem
TvxDBLink
TvxFileCon
TSetupDBDef
TSetupFileDefFlat
TSetupFileDefXML
TSetupFileDefEDI
TSetupFileDefExcel
TSetupFileDefJSON
TSetupMapDesign
Important Services
VeloxService loads definitions for flows, maps, reports, transports, and file monitors.
VeloxAPIService loads request/response definitions for REST actions.
- Database tables:
VX_DBDEF, VX_FILEDEF.
- File connection links are stored with
FileConFIDS.
- Database connection child links are stored through
TvxDBLink.
Data Definition Base Settings
TvxDataDef is the base for database and file definitions.
| Setting | Valid values | Default | Impact |
|---|
FileConFIDS | GUID string | EmptyGuid | Links a file definition to a file connection module. |
DisableStringTrim | Boolean | True | Controls string trimming behaviour for loaded data. |
TruncateStrings | Boolean | False | Controls whether strings may be truncated to field sizes. |
Runtime fields such as Request, Response, Active, EmptyForRead, FileConLoaded, and transaction state are not published configuration, but they control execution state.
Data Definition Module Identity
| Module | Table | Module description | Default module name |
|---|
TvxDBDef | VX_DBDEF | DB Def | New DB Def |
TvxFileDef | VX_FILEDEF | File Def | New File Def |
Definition Item Settings
TvxDefItem describes a source/destination item inside definition managers and flow actions.
| Setting | Valid values | Default | Impact |
|---|
SourceName | String | New Data Item; subclasses override to New DB Definition Item or New File Definition Item | Display/source name. |
SourceType | TvxDefinitionType | fstNoData; TvxDefDB sets fstDatabase; TvxDefFile sets fstFile | Identifies whether the item points to DB, file, web, none, or legacy JSON source type. |
SourceFIDS | GUID string | EmptyGuid | Links to source definition module. |
FileConFIDS | GUID string | EmptyGuid | Links to a file connection when the source item needs file access. |
RuntimePopup | Boolean | False | Enables a runtime popup/selection behaviour. Exact UI/runtime call sites were not fully traced here. |
AllowDBChange | Boolean | False | Allows database connection changes for the item. Exact enforcement was not fully traced here. |
UniqueTransaction | Boolean | Not explicitly assigned in constructor; Delphi default is False | Indicates transaction isolation/uniqueness behaviour for this item. Exact enforcement was not fully traced here. |
Auto Search Settings
TvxAutoSearchItem extends TvxVariable and stores criteria metadata.
| Setting | Valid values | Default | Impact |
|---|
DataViewName | String | '' | Dataview name used to build criteria item name. |
TableName | String | '' | Table name used to build criteria item name. |
FieldName | String | '' | Field name used to build criteria item name. |
ActionFIDS | GUID string | EmptyGuid | Flow/action reference for this auto search item. |
Enabled | Boolean runtime property, not published | True | Controls whether criteria is active. |
DB Definition Settings
| Setting | Valid values | Default | Impact |
|---|
UpdateIDFields | Boolean | False | Enables ID field update behaviour. Legacy ID management values may migrate this to true. |
CustomIDField | String | ''; legacy fimFloID migration sets XFLO_ID | Custom ID field name. |
CustomIDValue | String/expression | ''; legacy fimFloID migration sets XFLO_ID + 1 | Custom ID value/expression. |
DoUpdateIDFields is public runtime state and is not persisted.
File Definition Common Settings
| Setting | Valid values | Default | Impact |
|---|
FileType | TvxFileType | Not explicitly assigned in TvxFileDef.New; enum field default is fftFlatFile | Selects flat, XML, EDI, Excel, or JSON processing. fftExcel is old and maps to fftExcelFile. |
Delimited | Boolean | False | Indicates delimited flat-file parsing/writing. |
Delimiter | Integer character code | 44 | Field delimiter, default comma. |
RecDelimiter | TvxLineBreakType | flbCRLF | Record delimiter mode. |
RecCustomDelimiter | String | '' | Custom record delimiter when RecDelimiter = flbCustom. |
QuoteStrings | Boolean | False | Quotes string fields during output. |
QuoteChar | Integer character code | 34 | Quote character, default double quote. |
QuoteAnyDataType | Boolean | False | Applies quote behaviour beyond strings. |
ExcludedTop | Cardinal | 0 | Number of top records/lines excluded. |
ExcludedBottom | Cardinal | 0 | Number of bottom records/lines excluded. |
FileEncoding | TvxFileEncoding | feANSI | File encoding. |
WriteBOM | Boolean | False | Writes byte order mark where supported by the writer. |
PrintHeaderRow | Boolean | False | Includes header row when writing formats that support it. |
TrimStrings | Boolean | False | Trims strings during file processing. |
IgnoreInvalidLines | Boolean | False | Ignores invalid flat-file lines. |
IgnoreExtraFields | Boolean | False | Ignores extra fields in input. |
IgnoreInvalidNumbers | Boolean | False | Ignores invalid numeric values. |
IgnoreUndefinedRecords | Boolean | False | Ignores records not defined by the file definition. |
IgnoreNullRecords | Boolean | False | Ignores null records. |
IgnoreTruncatedFieldData | Boolean | False | Ignores truncated field data warnings/errors. |
IgnoreWarningInvalidMaskDTF | Boolean | False | Ignores invalid date/time format mask warnings. |
ExtendedCharsAllowed | Boolean | False | Allows extended characters. |
AutoDetectRecordDelimiter | Boolean | False | Auto-detects record delimiter. |
AutoDetectEncoding | Boolean | True | Auto-detects input encoding. |
AttemptOtherEncoding | Boolean | True | Attempts alternate encodings. |
EnableNullInData | Boolean | False | Allows null bytes/data in flat-file engine processing; comment notes normal nulls can stop loading. |
JSON File Definition Settings
| Setting | Valid values | Default | Impact |
|---|
JSONSchema | String | '' | JSON schema/configuration text. |
JSONRootType | TvxJSONRootType; public runtime property, not published | vrtNotSet | Root JSON shape used by runtime. |
XML File Definition Settings
| Setting | Valid values | Default | Impact |
|---|
BlankXML | String | Not explicitly assigned in New; Delphi string default is '' | Blank XML/template text. |
XSDSchema | String | '' | XSD schema text. |
SchemaLocation | String | '' | Schema location. |
TargetNameSpace | String | Set from loaded schema document when available; otherwise not explicitly assigned | Target namespace from schema. |
ValidateXML | Boolean | True | Enables XML validation. |
ResolveExternals | Boolean | True | Resolves external references. |
FixBadEncoding | Boolean | False | Attempts to fix bad encoding. |
MultipleRootNodes | Boolean | False | Indicates multiple schema roots. |
MultipleRootNodeSet | Boolean | False | Tracks whether multiple root node selection has been set. |
SchemaRootNodeIndex | Integer | -1 | Selected root node index. |
SchemaRootNodeName | String | '' | Selected root node name. |
IncludeXSINamespace | Boolean | True | Includes XSI namespace. |
IncludeXSDNamespace | Boolean | True | Includes XSD namespace. |
IncludeXMLProlog | Boolean | True | Includes XML prolog. |
TargetNameSpaceName | String | '' | Namespace prefix/name setting. |
NamespacesAsNeeded | Boolean | False | Writes namespaces as needed rather than globally. |
UseXSINilForNulls | Boolean | False | Writes xsi:nil for nulls. |
UTF16Encoding | Boolean | False | Enables UTF-16 XML output/input behaviour. |
ForceAttributeNSPrefix | Boolean | Not explicitly assigned in New; Delphi default is False | Forces namespace prefix on attributes. |
UseXSIType | Boolean | False | Uses xsi:type. |
AllowDTDReferences | Boolean | False | Allows DTD references. |
AbstractAssignments | TStringList | Empty list | Maps abstract schema assignments. |
AnyAssignments | TStringList | Empty list | Maps xs:any assignments. |
ArrayAssignments | TStringList | Empty list | Maps array assignments. |
EDI File Definition Settings
| Setting | Valid values | Default | Impact |
|---|
SegmentTerminator | Integer character code | 39 | EDI segment terminator, default apostrophe. |
ElementDelimiter | Integer character code | 43 | EDI element delimiter, default plus. |
SubElementDelimiter | Integer character code | 58 | EDI sub-element delimiter, default colon. |
EscapeChar | Integer character code | 63 | EDI escape/release character, default question mark. |
Excel File Definition Settings
| Setting | Valid values | Default | Impact |
|---|
ExcelAutoDetectFormat | Boolean | True | Auto-detects Excel format. |
ExcelFormat | TvxExcelFormat | fefXLSX | Excel file format. |
ExcelPassword | String | '' | Excel workbook password. Code does not show encryption for this property in TvxFileDef. |
ExcelTemplate | String | '' | Excel template reference/content. Exact runtime use not fully traced here. |
Runtime State
| Setting | Valid values | Default/reset | Impact |
|---|
FileNo | Integer | 1 | Counter used when processing file records. |
FixedLengthSize | Integer | -1 | Calculated fixed-length size. |
DesignRun | Boolean | False | Indicates design-time run. |
FileEngine | TvxFileEngine | nil | Runtime parser/writer engine. |
SchemaCache, SchemaDoc | MSXML objects | Created in constructor when available | XML schema processing support. |
Persistence Notes
- File definition type-specific forms use the same
TvxFileDef class with FileType determining effective behaviour.
TvxFileDef.GetModuleType returns class-name strings such as TvxFileDefFlat, TvxFileDefXML, TvxFileDefEDI, TvxFileDefExcel, and TvxFileDefJSON.
TvxDBDef.ReadOldIDManagement migrates older ID-management settings into UpdateIDFields, CustomIDField, and CustomIDValue.
Unclear Areas
RuntimePopup, AllowDBChange, and UniqueTransaction are persisted but their full runtime enforcement was not fully traced in this pass.
TargetNameSpace is derived from schema loading in code; its default before schema inspection is not explicitly assigned in New.