DATA9
DATA9: TvxClientDataSet
Example
procedure ScriptEvent(var Value: variant);
begin
CreateData(DATA9, ['Code,string,40', 'Quantity,integer']);
DATA9.Append;
DATA9['Code'].AsString := 'SAMPLE-009';
DATA9['Quantity'].AsInteger := 9;
DATA9.Post;
Value := DATA9.RecordCount;
end;
Usage
DATA9 provides the ninth independent action-owned client dataset for general script working data.
Behaviour, errors and limits
- Schema, records, cursor, filters, indexes and edit state remain visible to later users during the action.
- In-memory
Postdoes not prove a remote write or commit. - Direct invalid field/state operations can raise. Data helper failures are often logged/swallowed and may leave the object inactive/reset.
- Loading, closing, querying or recreating the schema invalidates retained fields and record positions.
- Complete result materialisation can consume significant memory and the mutable cursor is not thread-safe.
- File and SQL helpers have real external effects. Do not free
DATA9or depend on its rows after action cleanup.
Additional Technical Info
DATA9 is the ninth distinct TvxClientDataSet supplied as general mutable storage by the active action. Its numeric name does not prescribe a table, schema, query or persistence path.
The script instance is TvxActionMan.FData83. It begins inactive/unstructured and carries DATA9 only as an error-reporting dataset label.
Implementation and lifecycle
Scripts explicitly populate it through CreateData, Data query helpers or load methods. The Velox descendant preserves string whitespace, disables auto-calculated fields/fetch-on-demand and requests complete results. Normal read-oriented SQL use copies rows into memory, disables constraints/change logging and detaches the provider. Action cleanup closes it, and the action remains its sole owner.
Related entries
External references
- Embarcadero DocWiki:
TClientDataSet - Embarcadero DocWiki:
TDataSet - Free Pascal:
TDataSetis compatibility context only.