В большинстве случаев для работы с данными вам TMemTableEh вам будет достаточно свойств и методов самого компонента. Однако в некоторых случаях необходимо иметь возможность обработки данных на более низком уровне. Компонент TMemTableEh хранить записи в специально внутреннем массиве данных и имеет семь основных объектов для обработки внутренних данных:
TMemTableDataEh – внутренняя таблица данных. Содержит в себе два объекта: TMTDataStructEh описывающий структуру полей таблицы и TRecordsListEh содержащий список записей типа TMemoryRecordEh.
TMTDataStructEh – класс описывающий структуру полей внутренней таблицы. Содержит список объектов наследуемых от TMTDataFieldEh.
TMTDataFieldEh – базовый класс для определения типа поля во внутренней таблице. Является парент-типом для классов TMTStringDataFieldEh, TMTNumericDataFieldEh, TMTDateTimeDataFieldEh, TMTBlobDataFieldEh, TMTBooleanDataFieldEh, TMTInterfaceDataFieldEh, TMTVariantDataFieldEh, TMTRefObjectFieldEh.
TRecordsListEh – содержит список записей типа TMemoryRecordEh.
TMemoryRecordEh – представляет одну запись в массиве записей.
TRecordsViewEh – содержит отфильтрованный список записей. Содержит только записи удовлетворяющие условию TMemTableEh.Filter.
TMemoryTreeListEh – содержит древовидный список с узлами типа TMemRecViewEh и ссылками на записи.
Доступ к внутренним объектам из TMemTableEh
RecordsView: TRecordsViewEh – ссылка на отфильтрованный список записей.
RecordsView.MemTableData: TMemTableDataEh – ссылка на внутреннюю таблицу данных.
RecordsView.MemTableData.AutoIncrement: TAutoIncrementEh – ссылка на объект настройки инкрементных значений.
RecordsView.MemTableData.DataStruct: TMTDataStructEh – ссылка на объект структуры полей внутреннего массива.
RecordsView.MemTableData.DataStruct[Index: Integer]: TMTDataFieldEh – доступ к описанию полей структуры внутреннего массива.
RecordsView.MemTableData.RecordsList: TRecordsListEh – ссылка на массив-список записей.
RecordsView.MemTableData.RecordsList[Index: Integer]: TMemoryRecordEh – доступ к конкретной записи в массиве записей.
RecordsView.MemTableData.RecordsList[Index: Integer].DataValues[const FieldNames: string; DataValueVersion: TDataValueVersionEh]: Variant – доступ к значению поля(ей) в записи с номером Index.