Zim is designed to be backward-compatible with previous versions.
When new fields, constants, and keywords are introduced into the language, checked them to ensure that they do not conflict with existing object names. The first time that you run the Development Center or the Screen Painter in a new Zim version, Zim automatically creates these fields and constants. Running the version of ZIMINIT shipped with Zim initializes new databases containing any new fields and constants.
Zim 4.x users want to read the Migration Guide for 4.x users. This document details the changes to the Zim Language and User Interface since version 4.2.
A number of new keywords and data dictionary objects were introduced in Zim 5.1.
$dirpath
filebrowse
fileprint
getproperty
$printersetup
screenprint
screensave
setproperty
$squeeze
Zim 5.2 required a minor conversion for users of client-server systems. This conversion is described in detail in the section "Client-Server - Remote Name Mapping". The conversion is performed automatically the first time the Development Center or Screen Painter is accessed.
Several new fields, constants, and keywords were introduced into the language which should be checked to ensure that they do not conflict with existing object names.
Several new fields were added to support remote object names:
|
Owner Name |
Field Name |
Type |
Length |
|
EntitySets |
RemoteOwnerName |
varalpha |
128 |
|
Relationships |
RemoteOwnerName |
varalpha |
128 |
|
EntitySets |
RemoteName |
varalpha |
256 |
|
Fields |
RemoteName |
varalpha |
256 |
|
Relationships |
RemoteName |
varalpha |
256 |
New constants that are used as arguments to SET commands are: TableType, RemName and RemOwner.
A constant, $ODVersion, was added to track the version of the object dictionary.
A new keyword was added: DefaultType.
The first time that you run the Development Center or the Screen Painter in version 5.4, Zim automatically creates these fields and constants. Running the 5.4 version of ZIMINIT to initialize new databases also creates these fields and constants.
The following system EntitySet fields have been flagged not required.
|
Owner Name |
Field Name(s) |
|
FormFields |
BC, FC, Row, Col, Wdth, Hght |
|
Forms |
Wdth, Hght |
|
DisplayForms |
Row, Col |
|
Displays |
Wdth, Hght |
|
Menus |
BC, FC |
|
Windows |
BC, FC, Row, Col, Wdth, Hght |
Any compiled code that updates these system EntitySets needs to be recompiled. Also, care must be taken to check for nulls when comparing the values of these fields.
The LogDefinitions system EntitySet was introduced in Zim 5.4. It is Zim file zim0087.
Its structure is described in section 1.6.1.
A new Zim 5.4 system variable is $sqlpath.
A new constant that is used as an argument to the SET commands is LogDefinitions.
Two new constants describing the color of 3D widgets on Windows 95 are C3DObjectColor and C3DObjectTextColor.
Zim 5.5 introduced the following keywords: class, endclass, method, and endmethod.
Zim 5.6 introduced the following new keywords:
|
Buffer_Size |
ColName |
ColType |
Column_Def |
|
Column_Name |
Column_Size |
Column_Type |
Data_Type |
|
DDEnts |
DDFlds |
Decimal_Digits |
Dir_Path |
|
EntDirPath |
EntFileNum |
EntName |
EntObjectType |
|
EntRecordSize |
File_Num |
FldDecimals |
FldDirType |
|
FldFieldName |
FldIndexSubFile |
FldIndexType |
FldLength |
|
FldOffset |
FldOwnerFileNum |
FldRTType |
FldVField |
|
Graphic |
Index_Type |
Is_Nullable |
Nullable |
|
Num_Input_Params |
Num_Output_Params |
Num_Rec_Radix |
Num_Result_Sets |
|
NumInputParams |
NumOutputParams |
NumResultSets |
Offset |
|
Ordinal_Position |
Owner_File_Num |
Precision |
|
|
Procedure_Cat |
Procedure_Name |
Procedure_Name |
Procedure_Schem |
|
Procedure_Schem |
Procedure_Type |
Radix |
Record_Size |
|
Remarks |
RemoteProcName |
RemoteProcedures |
ResultFields |
|
ResultName |
ResultSets |
ResultType |
Scale |
|
SetSN |
SQL_Data_Type |
SQL_DateTime_Sub |
SQL_Octet_Length |
|
StoredProcedures |
StProcColumns |
StProcName |
Table_Cat |
|
Table_Name |
Table_Schem |
Table_Type |
Type_Name |
|
TableColumns |
Tables |
Zsv_Type |
|
Zim for Windows 2.0 (also known as Aria Zim) introduced the following new keywords:
|
$pagesetup |
$RightClickMenu |
MousePointer |
Toolbar |
|
Verb |
|
|
|