Product Documentation

VCL/CLX Developers Guide

Previous Topic

Next Topic

Migrating c-tree Plus files

This topic is only relevant to current or new c-tree Plus ISAM and Low-level developers migrating to c-treeVCL/CLX, c-treeDB, and c‑treeSQL. If a developer is using just the new interface technology without using the ISAM or Low-level interfaces, this section may be disregarded.

The basic requirements for a set of c-tree Plus ISAM and Low-level data and index files to work with c-treeVCL/CLX is:

  • The data file must have a DODA resource describing the record fields.
  • The data file must have an IFIL resource describing the data and index file structure.

The c-treeVCL/CLX interface works best with schema-based segments, where each index segment is a field declared in a DODA entry. c‑treeVCL/CLX works with index segments based on absolute record offsets and variable-length positions, which can span more than one field, but some advanced features, like TCtTable.AlterTable(), TCtRecord.RecordSetOn() and TCtRecord.Find(), may not work as expected.

Another issue may come from non-standard usage of c-tree field types declared in the DODA. There have been cases where CT_ARRAY fields being used as variable length data or CT_STRING fields being used as fixed string fields. Also CT_DATE, CT_TIME and CT_DATETIME fields whose contents may not be compatible with the definitions of data and time used by c‑treeVCL/CLX.

c-treeVCL/CLX was designed from the outset to be as compatible as possible with existing c-tree Plus ISAM and low-level data, but there may be situations where c‑treeVCL/CLX may not be able to handle very specific data type arrangements used by c-tree Plus users in their custom applications.

TOCIndex