This topic describes the structure of a table. A table is an item that can be stored in the Comms Database.
A table is a set of records. All records in a table are the same type. A table is also a container and an element.
There are two types of table:
a table that has records defined at system compile time - these records have named fields and are defined by Symbian platform.
a table that consists of records defined at run time - these records are user defined records - they are not known to Symbian platform when Symbian platform is built.
A table that has records defined at system compile time
is represented by the templated class [[[ERROR: [NOKX000E] Unable to find definition for key reference 'CommsDat']]]CMDBRecordSet
<T>
.
The template parameter defines the record type. The template parameter is
a Symbian platform defined record.
You create a table
object on the heap. You use the new (Eleave)
construction
to create this object.
The CommsDat API implements the table as an array of records and
uses [[[ERROR: [NOKX000E] Unable to find definition for key reference 'CommsDat']]]RPointerArray
<T>
as
the array. The CommsDat API implements RPointerArray<T>
in
the base class [[[ERROR: [NOKX000E] Unable to find definition for key reference 'CommsDat']]]CMDBRecordSetBase
, because
this behaviour is common to all tables. Tools and applications can access
the array and can use the sort behaviour provided by RPointerArray<T>
to
sort records.
A table that
has user defined records is represented by the [[[ERROR: [NOKX000E] Unable to find definition for key reference 'CommsDat']]]CMDBGenericRecord
.
The class has the behaviour that allows it to represent a record and a set
of records. Internally, the class has an array that can contain the records.
You
use the [[[ERROR: [NOKX000E] Unable to find definition for key reference 'CommsDat']]]CommsDat::CCDRecordBase::RecordFactoryL()
factory
function to create a [[[ERROR: [NOKX000E] Unable to find definition for key reference 'CommsDat']]]CMDBGenericRecord
object.