Skip to main content

DATA_Booking

DATA_Booking: TvxClientDataSet

Example

procedure ScriptEvent(var Value: variant);
begin
CreateData(DATA_Booking, ['BookingNo,string,50', 'VoyageNo,string,50', 'Code,string,100']);
DATA_Booking.Append;
DATA_Booking['BookingNo'].AsString := 'BOOKING-001';
DATA_Booking['VoyageNo'].AsString := 'VOYAGE-001';
DATA_Booking.Post;
Value := DATA_Booking.RecordCount;
end;

Usage

DATA_Booking provides the friendly dataset conventionally used for transport booking header working data.

Conventional VxData context

The current VxData Booking table contains transaction/application/party/source references, booking/voyage/vessel/port identifiers, commodity/UOM/quantity/weight/cubic/temperature data, status/revision/hashes and audit fields. Booking events and issues are separate tables; this variable neither loads them nor enforces their relationships.

That convention is guidance for choosing queries and field names, not a guarantee. A configured source/destination or customer extension may expose a different subset or additional columns. Use FindField for optional columns and never assume a named field merely because this page describes the current base schema.

Behaviour, lifecycle and side effects

  • Velox loads all returned rows into memory and preserves fetched string whitespace. Large results can use substantial memory.
  • Field access, navigation, filtering, indexing, inserts, edits, posts and deletes mutate this shared object. Closing or recreating it invalidates retained fields and record positions.
  • Post updates the client dataset; it is not proof of an external database write or transaction commit. SQL/file effects belong to the function used to populate or persist it.
  • Data helper functions generally catch and log SQL/creation failures, potentially leaving the object inactive or reset. Direct invalid field, conversion or dataset-state operations can raise.
  • Action cleanup closes every friendly dataset. Velox owns the object; never free it or depend on records surviving another action execution.
  • The mutable dataset and cursor are not thread-safe. Do not hand the reference to asynchronous work or let nested code reposition it without an explicit contract.

Alias and naming cautions

The friendly suffix communicates intended use only. It does not validate record type, authenticate a party/application, enforce foreign keys or protect the dataset from being reused for unrelated data.

Additional Technical Info

DATA_Booking is the friendly dataset conventionally used for transport booking data. It is a live TvxClientDataSet reference; the friendly name does not load data, choose a connection, execute SQL or impose a field layout.

Runtime binding and identity

Velox constructs the object with the action and binds DATA_Booking to TvxActionMan.FData64. Its diagnostic dataset name is DATA_Booking.

The dataset begins inactive and without fields. CreateData, the Data query helpers and load methods can each replace its current schema/records. All scripts using this action see the same live cursor, filters, indexes and edits until the dataset is closed or repopulated.

Related entries

  • Datasets explains cursor, field, edit and ownership rules.
  • CreateData creates an explicit in-memory schema.
  • GetData and GetDataFromDB explicitly populate a dataset.
  • TvxClientDataSet is the exposed class.
  • DATA_Voyage, DATA_Vessel, DATA_Port and DATA_Temperature are separate friendly datasets documented later.

External references

Created 2026-07-15