Work Path

work path path

where path is the disk directory path to the temporary work files for a session. The work path is valid for all users accessing the database and is formed by adding the work path with the user number that is entering the database at that time. For example:

work path /usr/users

Users will get work paths like:

/usr/users/00001
/usr/users/00002

The default work path is the database itself.

Valid Settings

Any directory path.

Related Topics

user name directory

Runtime Buffers

runtime buffers nn

where nn is the number of in-memory data buffers used when writing or reading compiled programs to or from the disk. Each buffer holds 1 KB. Increasing the number of buffers improves system performance, but increases the amount of internal memory needed. Specify any whole number within the permitted range, provided that the computer has enough memory.

The general effect of this option is that, when running compiled applications, the bigger this value, more compiled programs can stay in memory at the same time thus increasing performance of the application.

Valid Settings

nn = numeric entry 100 to 10000

Windows

100

UNIX

100

 

Parameter Size

parameter size nn

where nn specifies the maximum size of any single IN-type parameter or local variable used in an application program’s procedures.

IN parameters and local variables are stored internally as VARCHAR variables with a maximum size of nn. If the size of any IN parameters or local variables is larger than the default value of nn, increase nn. Conversely, if all parameters are significantly smaller than the default size, reduce nn to save memory.

Valid Settings

nn = numeric entry 0 to 32000

Windows

256

UNIX

256

 

User Name Directory

user name directory yes/no

It specifies that the working directory for the user starting a Zim session must be named after the user number or the user name.

For example, with :

user name directory yes

work path /usr/users

Users will get work paths like:

/usr/users/Chris

/usr/users/Deborah

instead of

/usr/users/00001

/usr/users/00002

The default setting is no.

Notice that the user names must be known by Zim in the Users entity set.

Related Topics

work path

 

Backscreen Prompt

backscreen prompt yes | no

Specifies whether the ZXClient prompt will be available when upon its start-up, that is, the user will not be able to interact with the prompt. The end result is that the user must follow the instructions provided by the Zim application.

Valid Settings

yes indicates prompt is available whereas no indicates the prompt will not be available for the user. The default value is always yes.

Sort Buffers

sort buffers nn

where nn is the maximum amount of memory (KB) that can be used when sorting data. If the requested amount of memory is not available, all available memory up to the limit specified by nn is used.

During a sorting process, fields of data to be sorted are extracted and put into sort records that are placed into sort buffers. Then, either the entire sort is performed in available memory or, if not enough memory is available, sort records spill into temporary disk files (the zimstxxx files).

A sort that occurs entirely in memory is quickest. If a sort process must use disk space, the records placed in temporary disk files must be merged back into the sorted order, resulting in reduced performance.

A high value for sort buffers has two effects:

  • The sorting is able to take place completely in memory.

  • The merging process is faster, as fewer passes are required to merge the data in temporary disk files.

Sort buffers space is acquired only during a sorting process and is returned once the sort is completed.

Set operations (UNION, INTERSECT, and MINUS) and the KEEP subcommand generate sort operations internally. Their speed is therefore also affected by the amount of sort buffer space.

Valid Settings

nn = numeric entry 100 to 10000

Windows

1000

UNIX

1000

Default Century and Century Threshold

century threshold n
default century n

where n is a numeric entry (see below for more information)

These two configuration options control the century used when date-masked fields contain ‘ YY’ instead of ‘ YYYY’.

If a field is masked only with ‘ YY’ and not ‘ YYYY’, then the end-user cannot enter the century, and Zim assumes the century is 19. Application developers are strongly urged to either i) use ‘ YYYY’ to mask date fields, or ii) use the two configuration options to automatically increment the century for certain date ranges.

Note:The former approach always works, while the latter works for applications with well-defined input data that falls into certain date ranges.

The default century is a number from 0 to 99 that is copied to the century position of a date when the end-user can enter only two year digits. If the century threshold is -1, then this default century is used verbatim. If century threshold is on the range 0 to 99, then the default century is incremented if the year entered by the end-user is less than n. The table below gives examples of resulting dates given user input and the input mask of ‘MM/DD/ YY’:

User InputDefault CenturyCentury ThresholdResulting Date ( YYYYMMDD)
12/12/9419-119941212
12/12/9420-120941212
12/12/01193020011212
12/12/35193019351212
12/12/35203020351212

In general, if your application must deal with widely-ranging dates, then use an input mask of ‘ YYYY’ to obtain expected results. However, if your application deals with dates of events occurring in the present, such as tagging orders with the order date, then an input mask of ‘ YY’ is sufficient, and set century threshold to a value, such as 50.

Valid Settings – Default Century

nn = numeric entry 0 to 99

Windows-1
UNIX-1

Valid Settings – Century Threshold

nn = numeric entry -1 to 99

Windows19
UNIX19

Conventions

A number of conventions are used throughout this guide to indicate how to enter commands. These include:

Key Combinations

When you are to press two keys at the same time, they are written as Key1+Key2. This means that you should hold Key1 down and then press Key2.

Command Syntax

When the general syntax of a Zim:X command is illustrated, the command syntax uses these rules:

SyntaxDescription
Any TextTypewriter-style words that are not underlined (e.g., ZOMList) are to be entered as written. This includes all punctuation marks (i.e., commas, periods, colons, parentheses, etc.) except for those noted below.
Any TextTypewriter-style words that are underlined (e.g., formname) are to be replaced with appropriate entries of the indicated type.
[ ]Items in brackets ([ ]) are optional. The brackets themselves are not entered.
An exception is the subscript notation used in connection with variables and form fields. Array variables and repeating forms or form fields are distinguished by a number that appears in brackets. For example: RepeatingField[3]. In this case, the brackets must be entered.
|| ||Vertical lists bounded by parallel lines ( || || ) indicate a group of possible options, at least one of which must be chosen. The lines themselves are not entered.
<< >>Items bounded by the symbols << and >> can be repeated one or more times. Unless otherwise noted in the individual descriptions, each item in such a series is separated from the next by a space.
|Items that are separated by a vertical bar (|) indicate a choice of one of the given items.
ABCIn text descriptions, all commands, keywords, and operating system utility names appear in uppercase letters (e.g., SET EXCEPTION, ZIMINIT).
Italic ItemsItalic items (e.g., path) are to be replaced by entries of the appropriate type (e.g., the characters nn are to be replaced by a number).
PunctuationCommas, periods, colons, parentheses, etc. are to be entered exactly as written.

Note: Zim:X makes no distinction between uppercase and lowercase letters in identifying command names. However, in operating systems such as LINUX, the case of operating system utilities is important. All operating system utility names should be entered in lower case.

Entering Commands and Instructions

The following table describes the methods by which commands and instructions can be entered:

enterType the given information and press the Return or Enter key.
pressPress the given key, or key combination, once.
usePress the given key, or key combination, as often as necessary to achieve the desired result.

 

What is ZIM?

ZIM-X: The Enterprise Framework That Thinks Like You Do

ZIM is an enterprise-grade application framework ecosystem powered by an object-oriented 4GL natural programming language. Originally developed by Bell Canada and Nortel Networks in the mid-1980s, ZIM pioneered the full-stack application framework and remains one of the most powerful and intuitive platforms for building enterprise-grade applications.


Why ZIM Over JavaScript, Python, PostgreSQL, and Apache?

✅ Natural Language Programming
ZIM uses English-like syntax such as find all Customers. instead of verbose SQL or multi-layered Python scripts. Developers focus on business logic, not boilerplate.

✅ Unified Language + Database
No need for ORMs or middleware. ZIM integrates programming and database operations natively for seamless execution.

✅ Built-In Entity-Relationship Model
Relationships are defined once and reused across the system, eliminating repetitive JOINs and reducing code complexity.

✅ Superior Performance
ZIM’s METAEngine allows multiple commands per transaction, making data operations faster and more efficient than traditional SQL servers.

✅ Edge-Ready Architecture
ZIM powers real-world IoT deployments, replacing PostgreSQL for edge-level processing on devices like Raspberry Pi.


Full Stack Platform Compatibility

ZIM’s full stack is compatible with:

  • Windows
  • Linux
  • Embedded Linux (ideal for edge and IoT applications)
  • Android

This cross-platform flexibility allows ZIM applications to run seamlessly across enterprise servers, desktop environments, mobile devices, and embedded systems.


ZIM Client/Server Architecture

ZIM operates under a robust client/server model:

  • ZIM Server: Central hub for data operations and user connections.
  • Clients: ZIM IDE, ZIM Thin Client (ZIMTC), ZIMExplore, and ZIMPrompt.

Key Features:

  • Single instance of ZIM Server can manage multiple databases.
  • Cross-platform clients (Windows/Unix) with GUI and TUI support.
  • Chained connections across multiple servers for distributed data access.
  • Concurrent control and secure data sharing across databases.

ZimAdmin: Comprehensive Database Management Console

ZimAdmin is a powerful graphical management console designed to simplify the configuration, monitoring, and management of all ZIM databases and ZIM Server machines within your network. With its intuitive interface, ZimAdmin provides a seamless experience for database administrators.

Key Features:

  • Activate ZIM Products
  • View Server Log
  • Manage User Connections
  • ZIM Server Configuration
  • View ZIM Server Statistics
  • View File Statistics
  • Customize Database Language
  • Database Configuration
  • View Database Objects

User Interface:

  • Tree View: On the left, ZIM Servers, databases, and objects are organized in a hierarchical tree view.
  • Grid Area: On the right, detailed information is displayed in a grid, depending on the selected utility.

Creating a New Database:
To create a new ZIM database, right-click on the Database folder and select “Create Database,” then follow the prompts.

ZimAdmin is your go-to tool for managing complex database environments with ease and precision. Explore the full potential of your ZIM network with ZimAdmin today!


Comparison Table

FeatureZIMTraditional Stack (JS, Python, PostgreSQL, Apache)
Language & DB Integration✅ Native❌ Requires APIs/ORMs
Natural Language Syntax✅ English-like❌ Technical/Verbose
ER Model Support✅ Built-in❌ Manual JOINs
Client/Server Architecture✅ Unified❌ Fragmented
Edge Deployment✅ Proven❌ Complex
GUI + TUI Support✅ Native❌ Requires frameworks
Licensing & Activation✅ Server-managed❌ Client-side installs
Platform Compatibility✅ Windows, Linux, Embedded Linux, Android❌ Varies by toolset

Built for the Future

Whether you’re building safety systems, IoT pipelines, enterprise dashboards, or mission-critical applications, ZIM-X offers a faster, smarter, and more secure way to develop and deploy.

ZIM is not just a tool—it’s a philosophy. It’s how enterprise software should be built.

pt_BRPortuguese