Attribute - Data Items (Magic xpa 2.x)
The attribute of a Field model, which you enter in the Attribute property of either the Model repository or the Column list, specifies the characteristics of the information held.
The field attributes are:
|
|
Alpha
|
Allows the storing of alphanumeric characters. In the Alpha attribute, Numeric characters are stored as a string. The Alpha attribute is the default attribute.
The maximum length for virtual variables is either 32K, the amount of available memory, or maximum column and row lengths of the underlying database. For Btrieve™ this may be 4096 bytes, assuming Btrieve was loaded with the /P:4096 page size property.
|
Unicode
|
Allows the storing of alphanumeric characters in Unicode format.
All the rules that currently apply to the modification of a Unicode field to another field type are the same as Alpha fields. See also Unicode Support.
|
Numeric
|
Allows the storing of an integer or a decimal number. Magic xpa supports up to 18 digits, with the condition that the number of whole digits and decimal digits are each rounded up to the nearest even number.
Platform specific: On Android and iOS devices, when parking on an editable Numeric control, the numeric keyboard will open.
|
Logical
|
Magic xpa internally stores the Logical attribute as a single byte with a value of either 0 (False) or 1 (True). Use Logical attributes when you are storing pairs of values (Boolean values), such as True/False and Yes/No. Logical attributes are usually accessed more quickly than their equivalent Numeric attributes.
|
Date
|
The numeric Date attribute is a counter of days since 01/01/01 or since 01/01/1901, depending on its storage field model. The fact that a Date attribute is stored as a numeric value lets Magic xpa perform calculations to create new date values. A Date attribute is translated to its visible value only when it is displayed in Magic xpa.
Platform specific: On Android and iOS devices, when tapping on an editable Date control, a Date Picker will open.
|
Time
|
Magic xpa internally stores the Time attribute as a counter of seconds, starting from midnight. You can use a Time attribute to represent either a duration of time or an absolute time value. Just as with Date attributes, Time attributes can be subtracted from one another, and values can be added to or subtracted from them. A Time attribute is translated to its visible value only when it is displayed in Magic xpa.
Platform specific: On Android and iOS devices, when tapping on an editable Time control, a Time Picker will open.
|
BLOB
|
BLOB is a Binary Large Object. An attribute that contains binary information not created in Magic xpa, and of unknown size. Magic xpa stores this information as is, without understanding the contents. A common use for BLOB attributes would be to store OLE objects or image bitmaps. Functions cannot act on BLOB attributes with the exception of the NULL() function that will return ‘True’ to signify an empty BLOB.
In a Rich Client program, if the data view contains BLOB variables with lots of content, the BLOBs will be passed between the server and clients (like all other variables), and this might slow down the program.
|
OLE
|
OLE is a BLOB field that is used to create an instance of an OLE COM object.
|
ActiveX
|
ActiveX objects refer to a group of COM objects that provide an embedded user interface and that is intended to be placed on a GUI Display form.
Runtime manipulation of an ActiveX object can be done through its GUI representation and through OLE automation commands.
Note:
|
The ActiveX attribute is no longer supported as of version 2.0.
|
|
Vector
|
Vector is an array that lets you store and retrieve data from a specified cell index. The Vector attribute is based on the BLOB attribute with an additional Cell Model property.
The Vector cell must be specified from a Magic xpa field model, as defined in the Model repository. .NET variables cannot be used as a Cell Model.
Vector indexing starts from one. The Vector attribute can only be selected from Virtual and Parameter fields. You cannot directly store vectors in a table.
Recursive vector definitions are not supported. You cannot put a Vector variable on a GUI or Browser form. It is not recommended to store large amounts of data in a vector because the array is stored in the computer’s memory.
You can access and modify the vector cells by using the Vector functions displayed from the Functions list.
|
.NET
|
Refers to a .NET object.
|