Skip to main content

Flat text, CSV and fixed-width definitions

Velox uses one flat File Definition type for delimited text such as CSV and for fixed-width records. Delimited Fields? selects the parsing model; CSV is not a separate module type.

Parsing and writing settings

SettingDefaultRuntime effect
Delimited Fields? / DelimitedClearedWhen selected, fields are separated by Delimiter; otherwise designed positions and lengths define fixed-width fields.
Field Delimiter / Delimiter44 (comma)Integer character code used between delimited fields. Common values include 9 for tab, 44 for comma and 124 for pipe.
Record Delimiter / RecDelimiterCRLFRecord boundary mode. Choose the contract's line break; select custom only when a literal custom boundary is required.
Custom Record DelimiterEmptyUsed only when record delimiter is custom. Test whether the value represents the exact characters required by the engine.
Quote stringsClearedQuotes string fields on output.
Quote character34 (double quote)Integer character code used for quoting.
Quote any data typeClearedExtends output quoting beyond strings. Use only when the receiving contract requires it.
Excluded top / bottom0 / 0Skips the configured number of leading or trailing lines during input. Use for governed headers/trailers, not to suppress unexplained records.
Text encodingANSIInitial encoding. Input auto-detection is enabled by default and may select a different encoding.
Write BOMClearedWrites a byte-order mark where supported. A BOM is part of the interface contract; some consumers reject it.
Print header rowClearedWrites field headings for formats/designs that support a header.
Trim stringsClearedTrims strings in file processing. This is distinct from the inherited Disable string trim setting. Test their combined effect.
Extended characters allowedClearedAllows extended characters in the file engine. Encoding still has to represent them correctly.
Auto-detect record delimiterClearedAttempts to infer record boundaries. Prefer an explicit contract for production.
Auto-detect encodingSelectedDetects input encoding.
Attempt other encodingSelectedTries alternate encodings after a problem. This may help compatibility but can make a supplier's encoding defect less obvious.
Enable null in dataClearedPermits null bytes/data that would otherwise stop normal loading. Enable only for a documented source contract.

Invalid-data policy

All ignore options default to cleared: invalid lines, extra fields, invalid numbers, undefined records, null records, truncated field data and invalid date/time format-mask warnings. Keep them cleared while commissioning. An ignored error can turn a rejected business record into incomplete data without correcting the source.

If an exception is necessary, document which records are skipped or values changed, how the event is logged/reconciled, and how the sender is corrected. Test counts and rejected examples as well as the successful result.

Design the record model

  1. Attach a test File Connection that points to sanitised samples.
  2. Select delimited or fixed-width processing and set the exact encoding and boundaries.
  3. In Design, create a dataview for each record type and stable record identifier.
  4. For delimited records, order fields exactly as supplied. For fixed-width records, define non-overlapping positions, lengths and data types.
  5. Model header/detail/trailer relations where applicable.
  6. Test minimum, maximum, blank, null, quoted-delimiter, embedded-line-break, invalid-number and encoding cases.
  7. Write a sample and compare bytes—not only visible text—with the agreed contract.

At runtime, FileNo starts at 1; the engine calculates fixed-length size and owns parser/writer state. These are runtime values, not settings to edit. Changing field order, position, size, type or record identifier can break every consuming Flow, Map and Report. Use Check Usage before changing a shared Definition.