Attribute Editor - Definition Page
This is where the main properties of an attribute are managed. The edit controls on this page are context sensitive. The context varies based on attribute type and whether the attribute is new or existing.

The name of the attribute can be any valid Object Pascal identifier.The storage name specifies the table column name in which attribute values are stored. By default, the storage name is the same as the attribute name. The type of the attribute can be selected from the list of all the types supported by InstantObjects. Some of the available types are known as simple types, others are known as relational types. The simple types generally have an Object Pascal equivalent simple type (eg string or integer). The relational types are used to define relationships between instances of the attribute's owner class and objects of other classes. The relational types are: Reference,Part, References and Parts.
The simple types and their Object Pascal property types are:
| Type | Property type | Notes |
|---|---|---|
| Integer | Integer | |
| Float | Double | |
| Currency | Currency | |
| Boolean | Boolean | |
| String | string | with a size |
| Memo | string | large text |
| DateTime | TDateTime | date and time |
| Date | TDate | date only |
| Time | TTime | time only |
| TimeStamp | TDateTime | date and time with the highest precision of the database (new in 4.4.0): with FireDAC on MS SQL Server DATETIME2(7), while DateTime uses DATETIME2(3) |
| Enum | enumerated type | stored as an integer |
| Blob, Graphic | binary data, images |
A TimeStamp attribute is declared in the IOMETADATA as Name: TimeStamp; and its field is a TInstantTimeStamp. When defining relational attribute types the object class entry is used to nominate the business class type that the attribute will be referencing. The list of available existing classes is presented for selection in the drop-down list. See how to use external storage forinformation on usage of the storage kind and external storagename entries.
