Introduction to Tables
The
IliTable class plays a central role within Data Access since it serves two fundamental purposes:
Modelling Tables are used as a structuring tool for user interface intensive applications. Before tables, user interfaces were designed as a set of unrelated entry fields and the relationship between these fields and the application data was coded in a programming language. Now, the data model of the application can be graphically defined in terms of tables, with gadgets in the panels being connected to table columns.
Connectivity Data can be seamlessly exchanged with external data stores using specialized subclasses of the
IliTable class. For instance, the
IliSQLTable class is dedicated to data exchange with a relational database system.
Note: In database terminology, the term “table” designates a data structure that is stored in and managed by a database system. From the graphical user interface point of view, the term “table” designates a graphic object (or gadget). In this document, the terms “database table” and “table gadget” are used to refer to these two different table types. The term “table” or “table object” will be used to designate an instance of a subclass of the IliTable class. |
A table is implemented by the
IliTable class in Data Access. This class is an abstract class that defines objects capable of managing a collection of rows. Each table has a schema that is defined by the
IliSchema class, from which the
IliTable class inherits. The rows that a table manages must conform to its schema.
As explained in
Data Access Basics, the
IliTable class defines an interface for managing rows in a table but it does not provide any useful implementation for this interface. Instead, Data Access provides a set of subclasses of the
IliTable class that implement this interface with a specific storage policy.
The
IliTable class defines a protocol for creating, editing, and inspecting a table object, and is designed to be subclassed. The subclasses of
IliTable (that is,
IliSQLTable,
IliMemoryTable,
IliStringsTable, and
IliMapTable) implement this protocol for the different types of data sources with which they are associated.
Published date: 05/24/2022
Last modified date: 02/24/2022