Getting Started with Zim
Conventions
Zim 8.00 Release Notes
Zim 8.10 Release Notes
Zim 8.11 Release Notes
Zim 8.20 Release Notes
Operating System Requirements
Installing Zim 8
Migrating to Zim 8
Running Zim 8 Applications
Migration from Previous Versions of Zim
Compatibility Issues
Migration Guide for Zim 4.x Users
Zim Configuration
Types of Configuration Files
Database Configuration Options
Active Border Color
Active Caption Color
Active Caption Text Color
Application Workspace Color
Backscreen Character Set
Backscreen Display
Backscreen Fill Color
Backscreen Heading
Backscreen Hide
Backscreen Pen Color
Backscreen Size Fixed
Button Face Color
Button Highlight Color
Button Shadow Color
Button Text Color
Century Threshold
Default Century
Directories
Document Line Length
File Extend
File Statistics
Gray Text Color
Highlight Color
Highlight Text Color
Inactive Border Color
Inactive Caption Color
Inactive Caption Text Color
Maximum Columns
Maximum Form Fields
Maximum Forms
Maximum Open Windows
Maximum Parameters
Maximum Rows
Menu Color
Menu Text Color
Parameter Size
Print Manager Support
Runtime Buffers
Screen IO
Scroll Bar Color
Scroll Mode
Scroll Pause
Server Request Tracing
Sort Buffers
SQL Database Name
Twips Per Column
Twips Per Row
Use RGB Colors
User Name Directory
Window Background Color
Window Color
Window Frame Color
Window Text Color
Work Path
Zim Server Configurations Options
Audit Path
Backup Path
Blocks Per Read
Buffers Per User
Checkpoint Buffers
Checkpoint Transactions
Clustered Commits
Datablock Timeout
Files Per Transaction
First File To Reclaim
Maximum Blocks Per User
Maximum Data Blocks
Maximum Databases
Maximum File Locks
Maximum Locks
Maximum Record Groups
Maximum Tables
Maximum Users
Object Sleep
Object Timeout
Pending Sleep
Pending Timeout
Quick Locks
Reclaim Object Size
Record Group Size
Scatter Table Entries
Scatter Table Links
Scatter Table Size
Secondary Lock Group Size
Secondary Lock Groups
Server Port Number
Zim Programming
About the Zim's Programmer's Guide
Constructing Statements
General Format Considerations
Continuation Lines
Comments
Quotation Marks
Case Sensitivity
Constructing Expressions
Constructing Expressions
Character Literals
About Character Literals
Metacharacters in Character Literals
Hex Codes in Character Literals
The Null String
Number Literals
System Variables
Arithmetic Expressions
About Arithmetic Expressions
Rules of Precedence for Arithmetic Operators
Decimals and Rounding
Arithmetic with Dates
How To Construct Arithmetic Expressions
How To Use Arithmetic Expressions
Functional Expressions
About Functional Expressions
Evaluation Order of Functional Expressions
Decimals in Functional Expressions
How To Use Functional Expressions
Data Types
About Data Types
Character Data Types
Number Data Types
The Date Data Type
Implicit Data Types of Literals
Data Types and Storage of Values
Conversion Between Data Types
Data Types and the Use of Database Indexes
How To Use Data Types
Conditional Expressions
About Conditional Expressions
Pattern Matching
Boolean Expressions
About Boolean Expressions
Rules of Precedence for Operators
Expressions and the $Null Property
Special Expression Formats
Truth Tables
Macro Substitution
About Macros
The Availability of Macros
How Macros Acquire Values
Macrosubstitution
Macros and Compiled Programs
Procedures for Zim Programming
How To Call Procedures
How To Construct a Validation Rule for Alphanumeric Fields
How To Construct a Validation Rule for Date Fields
How To Construct a Validation Rule for Numeric Fields
How To Construct Hex Codes
How To Construct Logic Expressions
How To Name Objects
How To Switch Windows Under Keystroke Control
How To Take Advantage of Rounding
How To Use Data Masks
How To Use Logic Expressions
How To Use Named Constants
How To Use the Null Property
How To Use Value Expressions
How To Use Variables
How to customize applications for languages other than English
Program Templates
Zim Reports
About Reports
Available Format Options
How To Use the Report Generator
Report Item Format Options
Output Masks
Zim Language Reference
About the Language Reference
Reserved Characters and Words
Zim Constants
Predefined Color Constants
Language Reference - alphabetical
? (Wildcard)
% (Wildcard)
_ (Wildcard)
# (Macro call)
$ (Template line join)
% (Comment)
( ) Parentheses
{ } (Case)
+ (Add/Positive)
- (Subtract/Negative)
* (Multiply)
/ (Divide)
^ (Exponent)
-> (Dynamic Rename)
-> (Result Set)
=, <, <=, <>, >, >= (Condition)
< > (Macro name delimiters)
<< >> (Program template delimiters)
\ (Escape)
{ } (Case)
$absolute
$acos
$adddays
$addhours
$addminutes
$addmonths
$addseconds
$addticks
$addweeks
$addyears
$and
$ansitodos
$asin
$atan
$atan2
$average
$BreakFlag
$center
$ClipPath
$compilestatus
$concat
$copytoclient
$copytoserver
$cos
$cosh
$count
$currentmember
$CursorCol
$CursorRow
$CursorScreenCol
$CursorScreenRow
$Date
$day
$dayname
$DBCharSet
$DBName
$DBPath
$DDEFunction
$DeadlockReason
$delete
$Direction
$dirpath
$distinct
$dostoansi
$Editor
$ErrCode
$ErrLevel
$Exist$
$exp
$False
$fieldnum
$filebrowse
$filenum
$filepath
$fileprint
$fill
$fromblob
$getproperty
$Graphics
$GroupID
$hours
$ImagePath
$insert
$InTransaction
$isalphabetic
$isalphanumeric
$isconnected
$isdate
$isdigit
$islower
$isnumber
$isodd
$isupper
$iswinopen
$iszimname
$LastErrCode
$LastErrLevel
$LastErrMessage
$lastmember
$left
$leftjustify
$length
$LineNumber
$Located
$log
$log10
$ltrim
$mask
$max
$MaxErrLevel
$maxof
$MemberCount
$messagebox
$min
$minof
$minutes
$modulus
$money
$month
$monthname
$not
$Null
$ObjCreate
$ObjDestroy
$objectstatus
$ObjErrCode
$ObjErrDescription
$ObjErrHelpFile
$ObjErrHelpTopic
$ObjErrObjectType
$ObjErrParameter
$ObjEventParameter
$ObjException
$ObjGetProperty
$ObjRunMethod
$ObjSetProperty
$or
$Page
$position
$printersetup
$ProgramFileName
$ProgramName
$random
$replace
$right
$RightClickMenu
$rightjustify
$round
$ScreenHeight
$screenprint
$screensave
$ScreenWidth
$seconds
$ServerFunction
$SetCount
$setproperty
$sin
$sinh
$soundex
$SQLErrCode
$SQLPath
$SQLErrMsg
$squeeze
$sqrt
$substring
$subscript
$tan
$tanh
$ticks
$Time
$TimeSecs
$toalpha
$tocharacter
$tochr
$todate
$tolower
$tonumber
$toord
$total
$toupper
$translate
$transmitkey
$trim
$True
$truncate
$ttrim
$UserFunction
$UserID
$value
$weekday
$WindowPSHeight
$WindowPSWidth
$WorkPath
$year
$ZGroupID
$ZimOS
$ZimPath
$ZimProduct
$ZimVersion
$ZUserID
$ZimSeqNum
ACCESS
ADD
AFT
AND
BEGIN WORK
[NOT] BETWEEN
BOTTOM
BREAK (Loops)
BREAK (Reports)
BYE
CASE
CFT
CHANGE
CLEAR
COLUMN BREAK
COMMIT WORK
COMPILE
COMPLETE
COMPUTE
CONTINUE
CONNECT
CREATE
CREATE MEMORY SET
CURSOR
DC
DDEConnect
DDEDisconnect
DDEExecute
DDEPeek
DDEPoke
DECRYPT
DELETE
DELETE FROM
DEPENDENCY
DESCERR
DETAIL LINE
DISCONNECT
DISPLAY DEFINE
DISPOSE
DOWN
EDIT
ELSE
ELSEIF
ENCRYPT
ENDCASE
ENDIF
ENDON
ENDPROCEDURE
ENDREPORT
ENDTRANSACTION
ENDWHILE
ERASE
EVALUATE
Event
EXPLERR
FIND
FORM CLEAR
FORM CLOSE
FORM DEFINE
FORM DISPLAY
FORM INPUT
FORM OPEN
FORM REPORT
FORM RESTORE
FORM SAVE
FORM SCROLL
FORM SET
FORM SET DYNAMICLIST
FORM SET FOCUS
FORM SET LIST
FORM SET MOUSEPOINTER
FORM SET SCROLL
GENERATE
GOTO
GOTO NEXT
GOTO PREVIOUS
GRAPH
HALT
HELP
IF
[NOT] IN
INITIALIZE
INPUT
INSERT
INTERSECT
IS [NOT] [$]NULL
KEEP
LET
[NOT] LIKE
LIST
LOCALPROCEDURE
LOCATE
LOGIN
MENU CLEAR
MENU CLOSE
MENU DEFINE
MENU DISPLAY
MENU INPUT
MENU OPEN
MENU SET
MENU SET TOOLBAR
MINUS
modstab
NEXT
NOT
ON
OR
OTHERWISE
OUTPUT
PAGE FOOTING
PAGE HEADING
PAGE LEFT
PAGE RIGHT
PARSE
PASSWORD
PAUSE
PERMISSION
PREVIOUS
PRINT
PRINT REPORT
PROCEDURE
QUITTRANSACTION
RELEASE
REMOTEEXEC
RENAME
REPORT FOOTING
REPORT FROM
REPORT HEADING
RESET CONNECTOR DOCUMENT
RETURN
RightClick
ROLLBACK WORK
SCREEN CLEAR
SCREEN RESET
SELECT
SERVBYE
SERVPROF
SET (EntitySet/Data Relationship Attribute)
SET (Field Attributes)
Set Specification
Set Specification (SQL)
SET AUTORETRY
SET AUTOSAVE
SET BREAKABLE
SET CHECKNULLS
SET CHECKPOINT
SET CHECKSETS
SET COLUMNSPACING
SET COMMANDTIMING
SET COMPILEMODE
SET CONNECTOR DOCUMENT
SET CURRENTSET
SET CURSOR
SET DATABASE ACCESS
SET DELIMITER
SET DEPENDENCY
SET DOCLINELENGTH
SET DOCUMENT FORMAT
SET EOFVALUE
SET EOLNTRANSLATE
SET ERRORS
SET ESCAPECHAR
SET EXCEPTION
SET EXECUTEMODE
SET FLOW
SET FOR UPDATE
SET HEADINGS
SET IMPLICITTRANS
SET INFORMATION
SET INPUT FORMAT
SET INPUT TIMEOUT
SET LEXTRACE
SET MEMBERCOUNT
SET MEMBERINTERVAL
SET MESSAGES
SET MESSAGES WINDOW
SET MOUSE
SET NULLVALUE
SET OUTPUT
SET OUTPUT FIELDLISTWIDTH
SET OUTPUT FORMAT
SET OUTPUT MASKFIELD
SET OUTPUT TRIM
SET OUTPUT VIRTUALFIELD
SET PAGESIZE
SET PAGEWIDTH
SET PAUSE
SET QUOTING
SET RESET
SET RESTORE
SET RUNTIME
SET SAVE
SET SELECTIVITY
SET SEQUENCENUMBER
SET SINGLESTEP
SET SIZE
SET SPECIALSCAN
SET SQLCOMPILE
SET SQLTRACE
SET STOP ERRORS
SET STRATEGY
SET TEXTDELIMITER
SET TIMEOUT
SET TRACE
SET TRACEOUTPUT
SET TRANSACTION DEFAULTTYPE
SET TRANSACTION FLOW
SET WARNINGS
SET XML HEADER
SET XML ROWELEMET
SET XREF
SLEEP
SORT
SORTED BY
STOP
SYSTEM
ThisForm
ThisMenu
ThisWindow
TOP
TRANSACTION
TRANSFORM
UNCOMPILE
UNION
UNRELATED
UP
UPDATE
USING
WHEN
WHERE
WHERE (Condition)
WHILE
WINDOW ACTIVATE
WINDOW CLEAR
WINDOW CLOSE
WINDOW DEACTIVATE
WINDOW DEFINE
WINDOW DISPLAY
WINDOW MOVE
WINDOW OPEN
WINDOW SCROLL
WINDOW SET
WINDOW SET ACCELERATOR
WINDOW SET CURRENT
WINDOW SET CURSOR
WINDOW SET INPUT
WINDOW SET INPUT EXPOSE
WINDOW SET MOUSEPOINTER
WINDOW SET OUTPUT
WINDOW SET SCROLL
WINDOW SIZE
XOR
ZCommand
ZIM
ZIMBACKUP
ZIMACTIV (Zim Activiation)
ZIMDD (Repair Facility)
ZIMEXPLORE
ZIMFILES (Object Browser)
ZIMFIX (Repair Facility)
ZIMINIT (New Database)
ZIMSERVER
ZIMTC
ZIMTCAP (Defining the Terminal Characteristics)
ZIMTRACE
ZIMXTEND (File Extender)
Language Reference - by type
Commands
Commands by Category
ACCESS
ADD
BOTTOM
BREAK (Loops)
BREAK (Reports)
BYE
CASE
CHANGE
CLEAR
COLUMN BREAK
COMPILE
COMPUTE
CONTINUE
CONNECT
CREATE
CREATE MEMORY SET
CURSOR
DECRYPT
DELETE
DEPENDENCY
DETAIL LINE
DISCONNECT
DISPLAY DEFINE
DISPOSE
DOWN
EDIT
ELSE
ELSEIF
ENCRYPT
ENDCASE
ENDIF
ENDON
ENDPROCEDURE
ENDREPORT
ENDTRANSACTION
ENDWHILE
ERASE
FIND
FORM CLEAR
FORM CLOSE
FORM DEFINE
FORM DISPLAY
FORM INPUT
FORM OPEN
FORM REPORT
FORM RESTORE
FORM SAVE
FORM SCROLL
FORM SET
FORM SET DYNAMICLIST
FORM SET FOCUS
FORM SET LIST
FORM SET MOUSEPOINTER
FORM SET SCROLL
GENERATE
GOTO
GOTO NEXT
GOTO PREVIOUS
GRAPH
HELP
IF
INPUT
LET
LIST
LOCALPROCEDURE
LOCATE
LOGIN
MENU CLEAR
MENU CLOSE
MENU DEFINE
MENU DISPLAY
MENU INPUT
MENU OPEN
MENU SET
MENU SET TOOLBAR
NEXT
ON
OTHERWISE
OUTPUT
PAGE FOOTING
PAGE HEADING
PAGE LEFT
PAGE RIGHT
PARSE
PASSWORD
PAUSE
PERMISSION
PREVIOUS
PRINT
PROCEDURE
QUITTRANSACTION
RELEASE
REMOTEEXEC
RENAME
REPORT FOOTING
REPORT FROM
REPORT HEADING
RESET CONNECTOR DOCUMENT
RETURN
REMOTEEXEC
RightClick
SCREEN CLEAR
SCREEN RESET
SET (EntitySet/Data Relationship Attribute)
SET (Field Attributes)
SET AUTORETRY
SET AUTOSAVE
SET BREAKABLE
SET CHECKNULLS
SET CHECKSETS
SET COLUMNSPACING
SET CONNECTOR DOCUMENT
SET COMMANDTIMING
SET COMPILEMODE
SET CURRENTSET
SET CURSOR
SET DELIMITER
SET DEPENDENCY
SET DOCLINELENGTH
SET DOCUMENT FORMAT
SET EOFVALUE
SET ELONTRANSLATE
SET ERRORS
SET ESCAPECHAR
SET EXCEPTION
SET EXECUTEMODE
SET FLOW
SET HEADINGS
SET IMPLICITTRANS
SET INFORMATION
SET INPUT FORMAT
SET INPUT TIMEOUT
SET LEXTRACE
SET MEMBERCOUNT
SET MEMBERINTERVAL
SET MESSAGES
SET MESSAGES WINDOW
SET MOUSE
SET NULLVALUE
SET OUTPUT
SET OUTPUT FIELDLISTWIDTH
SET OUTPUT FORMAT
SET OUTPUT MASKFIELD
SET OUTPUT TRIM
SET OUTPUT VIRTUALFIELD
SET PAGESIZE
SET PAGEWIDTH
SET PAUSE
SET QUOTING
SET RESET
SET RESTORE
SET RUNTIME
SET SAVE
SET SELECTIVITY
SET SEQUENCENUMBER
SET SINGLESTEP
SET SIZE
SET SPECIALSCAN
SET SQLCOMPILE
SET SQLTRACE
SET STOP ERRORS
SET STRATEGY
SET TEXTDELIMITER
SET TIMEOUT
SET TRACE
SET TRACEOUTPUT
SET TRANSACTION DEFAULTTYPE
SET TRANSACTION FLOW
SET WARNINGS
SET XML ROWELEMET
SET XMLHEADER
SET XREF
SLEEP
SORT
STOP
SYSTEM
TOP
TRANSACTION
TRANSFORM
UNCOMPILE
UP
WHEN
WHILE
WINDOW ACTIVATE
WINDOW CLEAR
WINDOW CLOSE
WINDOW DEACTIVATE
WINDOW DEFINE
WINDOW DISPLAY
WINDOW MOVE
WINDOW OPEN
WINDOW SCROLL
WINDOW SET
WINDOW SET ACCELERATOR
WINDOW SET CURRENT
WINDOW SET CURSOR
WINDOW SET INPUT
WINDOW SET INPUT EXPOSE
WINDOW SET MOUSEPOINTER
WINDOW SET OUTPUT
WINDOW SET SCROLL
WINDOW SIZE
ZCommand
Subcommands
-> (Dynamic Rename)
-> (Result Set)
COMPLETE
EVALUATE
INTERSECT
KEEP
MINUS
Set Specification
Set Specification (ISQL)
SORTED BY
UNION
UNRELATED
USING
WHERE (Condition)
SQL Commands
BEGIN WORK
COMMIT WORK
DELETE FROM
INSERT
ROLLBACK WORK
SELECT
UPDATE
DDE Services
$DDEFunction
DDEConnect
DDEDisconnect
DDEExecute
DDEPeek
DDEPoke
Operators
Operators by Category
( ) Parentheses
+ (Add/Positive)
- (Subtract/Negative)
* (Multiply)
/ (Divide)
^ (Exponent)
=, <, <=, <>, >, >= (Condition)
AND
[NOT] BETWEEN
[NOT] IN
[NOT] LIKE
NOT
IS [NOT] [$]NULL
OR
WHERE
XOR
Functions
Functions by Category
{ } (Case)
$absolute
$acos
$adddays
$addhours
$addmonths
$addminutes
$and
$addseconds
$asin
$addticks
$atan2
$atan
$ansitodos
$average
$addweeks
$addyears
$currentmember
$count
$center
$compilestatus
$concat
$cos
$cosh
$day
$dayname
$delete
$dirpath
$distinct
$dostoansi
$exp
$filebrowse
$filenum
$filepath
$fileprint
$fill
$getproperty
$hours
$insert
$isalphabetic
$isalphanumeric
$isconnected
$isdate
$isdigit
$islower
$isnumber
$isodd
$isupper
$iswinopen
$iszimname
$lastmember
$left
$leftjustify
$length
$log
$log10
$ltrim
$mask
$max
$maxof
$messagebox
$min
$minof
$minutes
$modulus
$money
$month
$monthname
$not
$objectstatus
$or
$position
$printersetup
$random
$replace
$right
$RightClickMenu
$rightjustify
$round
$screenprint
$screensave
$seconds
$setproperty
$ServerFunction
$sin
$sinh
$soundex
$sqrt
$squeeze
$substring
$tan
$tanh
$ticks
$toalpha
$tocharacter
$tochr
$todate
$tolower
$tonumber
$toord
$total
$toupper
$translate
$trim
$truncate
$ttrim
$value
$weekday
$year
$ZimSeqNum
System Variables
System Variables by Category
$BreakFlag
$ClipPath
$CursorCol
$CursorRow
$CursorScreenCol
$CursorScreenRow
$Date
$DBCharSet
$DBPath
$DeadlockReason
$Direction
$Editor
$ErrCode
$ErrLevel
$False
$Graphics
$GroupID
$HelpFile
$ImagePath
$InTransaction
$LastErrCode
$LastErrLevel
$LastErrMessage
$LineNumber
$Located
$MaxErrLevel
$MemberCount
$Null
$Page
$ProgramFileName
$ProgramName
$ScreenHeight
$ScreenWidth
$SetCount
$SQLErrCode
$SQLErrMsg
$Time
$TimeSecs
$True
$UserID
$WindowPSHeight
$WindowPSWidth
$WorkPath
$ZGroupID
$ZimOS
$ZimPath
$ZimProduct
$ZimVersion
$ZUserID
Event
ThisForm
ThisMenu
ThisWindow
Metacharacters
Metacharacters by Category
? (Wildcard)
% (Wildcard)
#(Macro call)
$ (Template line join)
% (Comment)
< > (Macro name delimiters)
<< >> (Program template delimiters)
\ (Escape)
Utilities
AFT
CFT
DC
DESCERR
EXPLERR
HALT
ZIMXTEND (File Extender)
ZIMINIT (New Database)
ZIMFILES (Object Browser)
ZIMDD (Repair Facility)
ZIMFIX (Repair Facility)
ZIMTCAP (Defining the Terminal Characteristics)
ZIMTRACE
Zim and Automatic Sequence Numbers
About Automatic Sequence Numbers
Implementation
Operation
Zim and ActiveX
General Concepts
Objects, Events, Properties and Methods
Zim Support for COM Objects
OLE Container Support
OLE Automation
Adding Component Objects to Zim Forms
ActiveX Examples in Zim
Zim and Blobs
Basic Concepts
Database Operations
Conversions
Import and Export
Special Aspects of Blobs
Compiling Zim Programs
About Compiling and Deploying Programs
The Compiler
About the Compiler
Prerequisites for Compilation
Where Compiled Programs Are Stored
How to Call a Compiled Program
When to Use the Compiler
Available Commands
About Available Commands
The Compile Command
The Uncompile and Set Runtime Commands
Using Compiled Programs
About Using Compiled Programs
Checking If a Program is Compiled
Editing a Compiled Program
The Lifetime of a Compiled Program
The Correct Use of Objects in a Compiled Program
About the Correct Use of Objects in a Compiled Program
Effect on Permanent Objects
Effect on Result Sets
About the Effect on Result Sets
Potential Problems
Examples
Recommendations for Compiling References to Result Sets
ZIM and DDE Services
About DDE Services
DDE Error Return Codes
Zim Development Center
About Development Center
About the Development Center
Development Tools and Services
Application Design
Object Maintenance
Common Development Tools
Debugging
Server Utilities
Security Administration
The Application Framework
Data Import and Export
Zim/SQL Import and Export Utilities
Getting Started
Accessing the Development Center
Command Line Access to Development Center
Application Design
About Application Design in DC
About Application Models
The Zim Application Model
Application Design Concepts
About Applications
Creating a New Application
Application Design Status Logging
Running a Generated Application from DC
Opening an Existing Application
Design Operations
Requesting Design Operations
Linking Application Components
Adding Toolbars and Status Bars to the Application Designer
Generators
Application Windows
Control Windows
Single Table Edit Windows
Header and Detail Windows
Report Windows
The Cross Tab Report Window
Direct Editing of Application Components
Customizing Generated Application Components
About Customizing Generated Application Components
Customizing Generated Code
Customizing Templates
Application Design Tips
About Application Design Tips
Finding Objects Generated for a Component
Changing the File Location for Generated Documents
Using an Existing Form for Data Editing
Forcing a Form to be Regenerated
Object Dictionary
Object Dictionary Editing
About Object Dictionary Editing
New
Open or Search
Save As Using Duplicate
Filter
Exit
Fields
Paint
Description
Name
Form and Edit
Table and Browse
Dictionary Reports
Development Tools
The Export Wizard
About the Export Wizard
Loading Data into Data Objects
Exporting Meta Objects Created with the Application Designer
Exporting Meta Definitions
Exporting Object Dictionary Definitions
Including Document Files for Export
Saving Users
The Import Wizard
About the Import Wizard
Loading Data into Data Objects
Importing Object Definitions from the Object Dictionary
Importing Meta Objects Created with the Application Designer
Importing Meta Definitions
Loading Framework Support Data
Loading Data from Data Objects
Including Document Files for Import
Loading Users
The Object Selection Interface
About the Object Selection Interface
Selecting Objects
Deselecting Objects
Manipulating Sets of Objects
Server Porting Facilities
Setting Up Server Porting Facilities
Export Wizard
Import Wizard
Using Server Porting for Cross Platform and Client-Server Development
Remote Access
About Remote Access
Defining Remote Tables
Defining Remote Procedures
Porting Remote Procedures
Deploying Remotely Accessible Applications
The Application Framework
About the Application Framework
The Framework - Standardized Support for the Application Model
Process Management
Event and Action Mapping
Support for Data Entry Windows
About Application Messages
Common Application Components and Facilities
About Common Application Components and Facilities
Predefined Constants
About pBreakHandler
About pCDLFind
About pExecuteMacro
About pDeadlockHandler
About pCDLInterpret
About pCDLPickList
About pCDLSelect
About pCDLSort
Query Management Services
Application Utility Services
zTabControl
About zTabControl
Constructing a Tab Control
Tab Control - A Tutorial
Using a Tab Control in a Display
Adapting Tab Controls for a TUI Environment
The Tab Control Constructor Interface
Debugging Facilities
Using the Framework
Simple Event Loop and Main Windows
Using Event-Action Mapping
Multiple Windows
Adding Debug Windows
Deploying Framework Applications
Programming Styles
About Framework Programming Examples
Event Handling versus Action Handling
Program Organization and Event Driven Applications
Application Messages
Data Entry State Handling
Reference Guide
Overview
About the Reference Guide
ZOM Object Selection
Selection Set Operators
Object Selection Criteria
Object Properties
Application Framework Requirements
Tool and Service Categories
$DCRevision
$DCVersion
$Language
$ODRevision
$ODVersion
Accelerator Key Constants
ApplMessages
ApplMessTitles
CONNECT
DDEConnect
DDEDisConnect
DDEExecute
DDEPeek
DDEPoke
DPSDeleteQuery
DPSEditQuery
DPSExecQuery
DPSMakeQuery
EventAction
LAC
LACC
LSFLDS
LSFFS
mDPSClrDocument
mDPSSetOutput
ObjectAction
pActionQueue
pBreakHandler
pCDLFind
pCDLInterpret
pCDLMessage
pCDLPickList
pCDLSelect
pCDLSort
pDeadlockHandler
pDispatchAction
pDPSDocCopy
pDPSDocDelete
pDPSDocumentView
pExecuteMacro
pFrameworkTrace
pGetAction
pMessageQueue
pODBCReportIF
pPostActionQueue
pProcessManager
pRegisterProcess
Printing Constants
pSendAction
pSetCurrentProcess
pSpy
pSystemSettings
pTaskManager
pUnregisterProcess
pUserMessage
pUserMsgParm
pValidateAction
ResetSystem
ShowWindows
ShutWindows
ZOMCat
ZOMCompile
ZOMCompileBoot
ZOMConfig
ZOMCopy
ZOMCreate
ZOMCrtBoot
ZOMDataLoad
ZOMDataSave
ZOMDDBoot
ZOMDelete
ZOMDestroy
ZOMDiagnose
ZOMDiff
ZOMDisable
ZOMEnable
ZOMErase
ZOMExec
ZOMExport
ZOMFixUp
ZOMGenHelp
ZOMImport
ZOMList
ZOMMake
ZOMMove
ZOMPermBoot
ZOMReCreate
ZOMReName
ZOMReset
ZOMSet
ZOMStatistics
ZOMTouch
ZOMUnCompile
ZOMViewLog
zTabControl
Zim Object Manager (ZOM) Guide
About ZOM
ZOM Requirements
Enabling ZOM
Using ZOM - the First Time
ZOM Concepts
A Homogeneous View of Objects
Registering an Object
Touching an Object
Registered Object Properties
Object Dependencies
Set-oriented Manipulation of Objects
Invoking a ZOM Service
Selecting Objects for Processing
Selecting a Set of Objects
Selection Criteria
Selecting by Name
Selecting by Keyword
Selecting Previously Selected Objects
Selecting by Status Properties
Selecting by the Defined Property
Selecting by the Exists Property
Selecting by the Selected Property
Selecting by the Locked Property
Selecting by the Active Property
Selecting by the Data Property
Selecting by the Datasave Property
Selecting by the Compilable Property
Selecting by the Compilestatus Property
Selecting Unreferenced Objects
Selecting by Dependency Explosion
Selecting by Named Set
Selecting by Dependency Implosion
Processing Options
About Processing Options
Setting Status Properties
Assigning Keywords
Redirecting Output
Pausing Output
Keywording Objects
Locking Object Definitions
Object Dependencies
About Object Dependencies
Dependency Explosion
Dependency Implosion
Unreferenced Objects
Object Maintenance
About Object Maintenance
Recreating Objects
Renaming Objects
Copying Objects
Moving Objects
Erasing Objects
Deleting Objects
Destroying Objects
Preserving Data When Objects Change
Exporting and Importing Objects with ZOM
About Exporting and Importing Objects with ZOM
Exporting Objects
Importing Objects
Team Development Projects and ZOM
About Team Development Projects and ZOM
Configuring ZOM for Team Development
The Master/Slave Development Approach
About the Master-Slave Development Approach
Merging Changes
Verifying Imported Objects before Merging
Using Locks for Change Control
The Peer-to-Peer Development Approach
Single Person Development Projects
ZOM Graphical Interfaces
Configuring ZOM
About Configuring ZOM
Display Mode
Error Logging
Dependency Tracing
Default Zim Directory
Conventions On
Explode Level
New Keyword
Changed Keyword
Environment Code
Express Mode
Process Sort Order
Log Object Modifications
ZOM Commands
Diagnosing Application Problems with ZOM
Advanced Topics
Object Dictionary Extensions for ZOM
Object Key Description
Advanced ZOM Object Selection Criteria
Zim for Windows Screen Painter
About the Screen Painter
An Introduction to the Screen Painter
An Introduction to the Screen Painter
Invoking the Screen Painter
Screen Painter Layout Mode
Creating Objects in the Window
Screen Painter Test Mode
Selecting, Moving, and Resizing Objects
Menu Bar Options
Viewing and Editing Object Attributes
Exiting the Screen Painter
Getting Started
Accessing the Screen Painter
Exiting Screen Painter
Using Help in the Screen Painter
Zim Language Help
Screen Painter Modes
Layout Mode
About Layout Mode
Screen Components
The Menu Bar
The Tool Bar
The Object Gallery
The Presentation Area
The Structure Chart
About the Structure Chart
Object Ownership
Object Z-Order
Tab Sequence Order
Accelerator Key Operation
The Status Bar
The Message Bar
The Paint Window
The Drawing Preferences Dialog
Test Mode
About Test Mode
The Event Vector Dialog
The Window Context Dialog
The Menu Context Dialog
The Form Context Dialog
Screen Painter Components
The File Menu
The Edit Menu
The Arrange Menu
The Style Menu
The View Menu
The Gallery Menu
The Coordinates Menu
Screen Painter Objects
About Screen Painter Objects
Object Ownership
Associations between Objects
Operations on Objects
About Adding Objects
Selecting Objects
Moving Objects
Resizing Objects
Aligning Objects
Even Spacing Objects
Same Sizing Objects
Justifying Objects
Sizing Objects to Their Contents
Setting Object Colors
Setting Object Fonts
Setting Object Borders
Changing the Visual Attributes of Objects
Editing Object Attributes
Duplicating Objects
Deleting Objects
Undoing and Redoing Operations
Cut, Copy and Paste Activities
Snapping to Grid
Aligning to Grid
Window Objects
Window Objects
WINDOW DEFINE
The Edit Window Dialog
The Window Options Dialog
The Change Window Dialog
Display Objects
Display Objects
DISPLAY DEFINE
Menu Objects
Menu Objects
Adding Menu Objects
The Add Menu Dialog
The Edit Menu Dialog
Menu Item Objects
Menu Item Objects
MENU DEFINE
Adding Menu Item Objects
The Add Menu Item Dialog
The Edit Menu Item Dialog
The Customize Menu Item Values Dialog
The Toolbar Button Properties Dialog
The Duplicate Menu Item Dialog
Form Objects
Form Objects
FORM DEFINE
Adding Form Objects
The Add Form Dialog
The Edit Form Dialog
The Duplicate Form Dialog
Form Field Objects
Form Field Objects
Adding Form Field Objects
The Add Form Field Dialog
Editing Form Field Object Types
Transforming Form Fields
The Duplicate Form Field Dialog
Form Field Object Types
Option Box
The Option Box Form Field
The Edit Option Box Dialog
The Option Box Options Dialog
Frame
The Frame Form Field
The Edit Frame Dialog
Label
The Label Form Field
The Edit Label Dialog
Entry Field
The Entry Form Field
The Edit Entry Field Dialog
The Entry Field Options Dialog
The Customize Entry Field Value Dialog
Push Button
The Push Button Form Field
The Edit Push Button Dialog
The Push Button Options Dialog
Option Button
The Edit Option Button Dialog
The Select Button Image Files Dialog
Check Box
The Check Box Form Field
Radio Button
The Radio Button Form Field
List Box
The List Box Form Field
The Edit List Box Dialog
The List Box Options Dialog
The Customize List Box Value Dialog
Combo Box
The Combo Box Form Field
The Edit Combo Box Dialog
The Combo Box Options Dialog
The Customize Combo Box Value Dialog
Scroll Bar
The Scroll Bar Form Field
The Edit Scroll Bar Dialog
The Scroll Bar Options Dialog
Graphic
The Graphic Form Field
The Edit Graphic Dialog
Image
The Image Form Field
The Edit Image Dialog
The Image Options Dialog
Image Autosize Options
Toggle Button
The Edit Toggle Button Dialog
The Toggle Button Options Dialog
The Customize Toggle Button Values Dialog
OLE Container
The OLE Container Form Field
The Edit OLE Container Dialog
The OLE Container Options Dialog
OLE Container Auto Size Options
Global Operations
The New Dialog
The Open Dialog
The Save Dialog
The Save As Dialog
The Generate Dialog
The Import Dialog
Object Attributes
Automatic Name Generation
Zim Object Naming Rules
Object Availability Attribute
Form Field Data Types
Data Value Validation Rules
Data Value Masking Rules
File Path Prefix Characters
Callback Events
About Callback Events
Windows and Callback Events
Menus and Callback Events
Menu Items and Callback Events
Form Fields and Callback Events
Text-based Coordinates Systems Operation
About Text-based Coordinates Systems Operation
User Interface Limitations on Text-based Environments
Designing Applications for Graphical and Text Environments
Text Mode
Zim for UNIX Screen Painter
About UNIX Screen Painter
Accessing the Screen Painter or Menu Painter
About Accessing the Screen Painter or Menu Painter
Access to Zim Form and Display Painter
Painting a Window
Painting a Menu
Painting a Form
Painting a Display
Using a Mouse in the Screen Painter
Step by Step to a Simple Form
About the Tutorial
Starting with a Sketch
Calling Up the Painter
Starting a New Form
Identifying the Form and Beginning Painting
Screen Painter Features
Adding a Label Form Field
Adding an Entry Form Field
Resizing the Entry Form Field
Editing Other Attributes of the Entry Form Field
Duplicating the Form Fields
Moving the Form Fields
Adding and Formatting an Option Box
Adding and Positioning Option Buttons
Checking the Z-order of Objects
Naming and Saving the Window
Testing the Existing Objects
Adding a Frame and Associated Form Fields
Adding a Multi-line Entry Field with Scroll Bars
Enclosing Existing Form Fields in a Frame
Saving Your Work and Exiting
Screen Painter Facilities
About Screen Painter Facilities
The Painting Window
The Menu Bar
The File Menu
The Edit Menu
The Arrange Menu
The Style Menu
The Gallery Menu
The Help Menu
User Interface Creation - Basic Operations
About User Interface Creation - Basic Operations
Adding Objects to the Interface
Selecting Objects in the Display
Deleting Selected Objects
Changing the Size of an Object
Moving an Object
Editing Objects in the Display
Saving Your Work
Exiting the Screen Painter
User Interface Creation - Advanced Operations
About User Interface Creation - Advanced Operations
Cutting, Copying and Pasting Objects
Duplicating Objects
Arranging Objects
Modifying Style Characteristics
Generating Form Fields
Importing Form Fields or Forms
Transforming Fields
Testing Objects
Displaying Properties
A Summary of Keyboard and Mouse Actions
The Menu Painter - Basic Operations
About The Menu Painter - Basic Operations
Menu Bar Items
Adding a Menu Item
About Menu Bar Items
Editing a Menu Item
Deleting a Menu Item
Sub Menus
About Sub Menus
Editing the Sub Menu Beneath a Specific Menu Item
Adding a Sub Menu Item
Editing a Sub Menu Item
Discarding All Changes to a Sub Menu
Accepting All Changes to a Sub Menu
Deleting a Sub Menu Item
Editing the Sub Menu Beneath a Specific Sub Menu Item
Defining a Horizontal Separator Sub Menu Item
Zim Server Connectivity
About Zim Server Connectivity
Basic Concepts
Guidelines to Use Zim Server Connectivity
Accessing Multiple ZIM Databases at Same Time
Program Compilation and Execution
Performance
Security Considerations
Other Configuration Options
Tracing Zim Server Connectivity
Error Handling
SQL Connectivity
About Client-Server
Portability Benefits of Zim Client-Server
Migrating Zim Host-based Application to Client-Server Applications
Setup of Zim Server Access Modules (SAMs)
File Contents
ORACLE
DB2
Environment Variables
Zim on Windows
Zim on UNIX
Initializing the Server Access Modules (SAMs)
ORACLE
DB2
About Isolation Levels
Configuring the Date Mapping for SAMs
Preparing an Application for Client-Server
About the Preparation
Uniquely Identifying the Compiled Application
Establishing the SQL Database
Flagging Objects for the SQL Server
Connecting and Recompiling the Zim Application
Developing Zim Client-Server Applications
About Zim Client-Server Applications
Defining Tables in Zim
About Defining Tables in Zim
Indexing Virtual Fields
Defining Numeric Fields with Decimals
SQL Table "Owners"
Naming Differences between Zim and SQL
Exporting Zim Table Definitions
Importing SQL Table Definitions
About Importing SQL Table Definitions
SQL Table Subsets
SQL Views
Connecting to SQL Servers
Concurrent Connections to Multiple SQL Servers
Controlling Modes of Execution
About Controlling Modes of Execution
Program Execution
Program Compilation
Tracing SQL Commands
Transactions
Caveats
Importing and Exporting SQL Definitions
About Importing and Exporting SQL Definitions
Accessing the Zim Import and Export Facility
Importing SQL Definitions into Zim
Exporting Zim Definitions to SQL
Performance Tuning
Compiling Client-Server Application Programs
Distributing Data Between Zim and the SQL Database
Block Fetching
$ServerFunction
The Benefits of $ServerFunction
Server Side Functions with Input Parameters
SAM Utility Programs
About SAM Utility Programs
SQLEXEC
ORAEXEC
SQL Statement Syntax
Errors
Execution Error Conditions
The "Deadlock" Error Condition
Errors from SQL Servers
SAM Errors
ODBC Driver Connectivity
About the ODBC Driver
Configuring a Data Source
Logging in to a Database
Using Per User Entity Sets
Supported SQL Grammar
Performance Tuning
About Performance Tuning
Locks and Deadlock Conditions
Memory Use in the Client
Memory Use in the Server
Zim Server Performance Tuning
File Management and Distribution
Files in a Zim Application
Physical structure of a Zim database
Distributing Database Files
Foreign Directories
File Management
Database Backup and Restoration
About Database Backup and Restoration
Database Backup and Restoration
How to Maintain the Integrity of a Database
Zim Object Dictionary
About the Zim Object Dictionary
Entity Set Reference
Structure of the Entity Sets
Constants
DDDescriptions
Directories
DisplayForms
Displays
Documents
EntitySets
Fields
FormFields
Forms
Menus
NamedSets
Relationships
Roles
Users
Variables
Windows
Field Reference
About the Field Reference
AC
AN
AvgSize
BC
Bord
BordBC
BordDefault
BordDM
BordFC
BWSel, EQSel, LGSel
Case
CM
Col
ConstName
ConstType
ConstValid Values
DataMask
DDObjectDesc
DDObjectName
DDObjectType
DDOwnerName
Decimals
Default
DirId
DirName
DisplayName
DM
DocName
DocType
DT
EntName
EntType
EQSel
ErrorMsg
FC
FFSN
FieldHeading
FieldLen
FieldMask
FieldName
FileName
Fill
FNum
Foreign
FormDirName
FormName
FormNum
FSN
FT
GroupId
HelpMsg
Hght
HMargin
Index
IT
Just
Length
LGSel
ListWidth
LoadOrder
MenuName
MenuNum
MenuType
MinLen
ObjectKey
OwnerDirName
OwnerName
PM
RA (RD)
RelCondition
RelName
RelType
Reqd
RoleCondition
RoleName
Row
SetName
SetSpec
Size
SK
SN
TE
Type
UserId
UserName
VA
ValRule
VarName
Virtual
VMargin
VR
WdgAlwaysOnTop
WdgAutoDrop
WdgAutoSelect
WdgAutoSize
WdgAvailable
WdgBackground
WdgBCBlue, WdgBCGreen and WdgBCRed
WdgBorderStyle
WdgBoundaryStyle
WdgCaption
WdgClass
WdgClick
WdgClosed
WdgCol
WdgDblClick
WdgDragIcon
WdgDragMode
WdgDropTarget
WdgEditOptions
WdgFCBlue, WdgFCGreen and WdgFCRed
WdgFont
WdgFontSize
WdgGotFocus
WdgHght
WdgHMargin
WdgIcon
WdgID
WdgInputMask
WdgIsDefault
WdgItems
WdgLabel
WdgLabelPosition
WdgLargeIncrement
WdgLostFocus
WdgMaximize
WdgMaxValid Values
WdgMinimize
WdgMinValid Values
WdgModal
WdgModified
WdgMove
WdgMultiLine
WdgNullImage, WdgOffImage and WdgOnImage
WdgNullValue, WdgOffValue and WdgOnValue
WdgNumVisibleCols
WdgNumVisibleLines
WdgOrientation
WdgParID
WdgPointerStyle
WdgResize
WdgRow
WdgScrollBars
WdgShadowSize
WdgSmallIncrement
WdgStyle
WdgSubClass
WdgSysMenu
WdgTabStop
WdgTag
WdgVMargin
WdgWdth
WdgZOrder
Wdth
WinName
WinOwnerDirName
WinOwnerName
WinType
WNum
ZimWeb
About Zim Web
What is ZimWeb
Features
ZimWeb Architecture
Configuring ZimWeb
Commands issued by the Zim Server to the Zim Web
Input Parameters
Page Templates
XML URIs
ZimWeb Administration
Creating Secure Zim Web Applications
Bibliography
Zim Class Specification
Introduction to Zim Class Specification
Classes
Methods
Protocols
Security and Data Protection
Deploying a Zim Application
Registry on Windows
Troubleshooting a Zim Application
Migrating from Graphical to Text-Based Systems
Contacting Us
Trademarks and Copyright Information
End User Licence Agreement