Run Backup Server

run backup server [yes | no]

Instructs ZimServer to start saving records to be used by ZimBackup Server. It also starts a process that communicatos with ZimBackup to feed these records to a database serving as a backup.

For ZimBackup to run correctly, it requires other parameters and procedures. Visit the document Database Backup for more information.

Change The RGB Color of an Object in Code using $rgb()

Conditional Color Assignment Using $rgb()

Purpose

In Zim, you can use conditional logic to dynamically change the color of form objects based on runtime conditions such as user input, system status, or validation results. This is achieved using the if, elseif, else, and endif control structures in combination with the $rgb function.


Syntax

 

if condition
    action
elseif condition
    action
else
    action
endif

 


Example: Status-Based Field Coloring

 

if $status = "error"
    form set (fillcolor rgb $rgb(255, 0, 0)) MyForm.MyFormField
elseif $status = "warning"
    form set (fillcolor rgb $rgb(255, 165, 0)) MyForm.MyFormField
else
    form set (fillcolor rgb $rgb(0, 255, 0)) MyForm.MyFormField
endif

 

Explanation

  • If the status is "error", the field is colored red.
  • If the status is "warning", the field is colored orange.
  • For all other statuses, the field is colored green.

Use Cases

  • Form validation feedback (e.g., highlight invalid fields).
  • User role–based UI customization (e.g., different colors for admin vs. guest).
  • System alerts and notifications (e.g., color-coded warnings).
  • Real-time sensor feedback (e.g., temperature thresholds triggering color changes).

Best Practices

  • Keep RGB values consistent with your UI design system.
  • Use descriptive variable names for conditions.
  • Avoid deeply nested conditionals—break logic into reusable procedures if needed.

Web Port Number

web port number port

This configuration option establishes the port number used by Zim applications running on a Web browser. It’s reserved for future use.

Valid Settings

A number from 1024 to 32765.

Windows6005
UNIX6005

Java Options

java options <options>

The options are any valid parameters that are understood by Java when a Java instance is started. This occurs when ZimServer performs a connection to the JDBC Driver or JDBC SAM. The valid options are the ones described by the Java documentation.

Example

java options "-Xmx64M"

Backup Server Name

backup server name <name or IP address>

The name or IP address is the location in the network where ZimBackup Server is responding to perform an online application of the data just updated by ZimServer. These files correspond to committed transactions from all databases being served by Zim Server and can be placed anywhere in the network so that they are saved in case of a disk crash.

It should be used in conjunction with Backup Port Number configuration option.

Valid Settings

A valid Internet address.

WindowsNone is set
UNIXNone is set

Backup Port Number

backup port number <port number>

The backup port number establishes the port number used by Backup Server to interact with Zim Server when applying the backup blocks to the backup databases.

Together with Backup Server Name, Zim Server establishes a connection to ZimBackup to keep sending backup blocks of data as soon as these data blocks are committed by ZimServer in its local databases.

Valid Settings

A valid number between 1024 and 65535 not conflicting with the Server Port Number configuration option.

Windows6001
UNIX6001

Maximum Log Size

maximum log size file-size

The number file-size, expressed in Kb, indicates the maximum size the log file ZIMSVLOG.ZIM can reach until the log rotation happens.

Valid Settings

A number from 1,000 to 10,000,000 (or, between 1 Mb and 10 Gb) for both Windows and Linux. The default is 10,000, or 10 Mb.

Log Rotation

After the file ZIMSVLOG.ZIM reaches the limit here set, the file is renamed to one with a timestamp and a new file is created.

 

The ZIMSVLOG.ZIM file

The log file zimsvlog.zim, located in the directory pointed to by the ZIM environment variable, records all events happening with Zim Server like, its start, its end, errors, tracing, and other information.

You can browse its contents using a text editor or using ZimAdmin.

After some time using ZimServer, this file can become very large. You should check the size of it from time to time, archive it (if you wish) and erase it. It can be erased at any time, even when Zim Server is running. Next time ZimServer needs to log some information, the file will be recreated.

Starting Zim IDE

ZimIDE at a Glance

The Zim Integrated Development Environment (ZimIDE) is a comprehensive tool designed for creating graphical user interfaces (GUIs) for Zim database applications. It enhances and integrates the functionalities of three previously separate development components for Zim applications:

  • Zim Painter
  • Zim Development Center
  • Data Dictionary Browser

ZIM Corporation is dedicated to the ongoing development and enhancement of ZimIDE and the Zim language, ensuring continuous evolution with new features and improvements.

General Features

  • Local and remote application development
  • Multiuser application development
  • Design and edit forms and displays in both GUI and TUI applications
  • Supports all Zim 9.50 platforms (Windows, Linux, iOS, Android)
  • Connect to multiple databases simultaneously
  • Browse the entire data dictionary through the Tree View Tab Page

Graphical User Interface Designer

New user interface objects for Zim 9.50:

  • Grid Control (from Zim 7.x)
  • Tab Control and Tab Page (managed automatically by the client, no extra Zim code required)
  • Tool Strip

New attributes for form fields:

  • Anchoring
  • Docking
  • The Attributes Tab Page can be configured to be always visible
  • Create and edit multiple objects simultaneously
  • Modern tabbed development interface: Each Form, Display, Window, Menu, and Document stays open in its own tab page

Document Editor

Designed as an embedded specialized editor for Zim application programs and other documents:

  • Syntax highlighting customized for the Zim language
  • Region expanding and contracting

Database Viewer Tab Page

Simultaneously browse every database currently connected to the development environment in a single tab page.


Starting Zim IDE

1. Starting Zim IDE from Zim Thin Client

You can invoke Zim IDE directly from Zim Thin Client or Zim QT (available in Zim 9.00):

  • Initialization: Zim IDE will initialize using the database connection from your current Zim Thin Client or Zim QT session.

2. Starting Zim IDE Directly

From the Zim installation directory:

  • Execute or double-click on the file ZimIDE.exe.

Alternatively, you can use shortcuts:

  • Desktop shortcut
  • Quick Launch toolbar
  • Start menu: Start → (All) Programs → ZIM → Zim 9.00 (or Zim 7.21) → Zim IDE

When starting directly, you’ll need to provide all necessary connection information since it’s not using an existing session.


Where:

User NameUser name from “users” table in the Zim database.  “ZIM” is default user.
PasswordPassword for user.  Default “ZIM” user has no password.
DatabaseLogical name of the database you are connecting to as it is defined in the file zimdb.zim, located in the ZIM install directory.
Port NumberPort that Zim Server is listening on.  The default port for Zim 9.00 is 6002, the default port for Zim 7.11 is 5001..
DriverSelect the driver version that matches the version of Zim that you are using.
Host NameThe IP Address or name of the computer that is hosting Zim Server.  You can use “localhost” if Zim Server is running on the same machine as Zim IDE.

 

Zim Object Naming Rules

 

Valid Zim object names can be 1 to 18 characters in length. Valid characters for inclusion in an object name include the dollar sign ($), the underscore character (_), the letters a through z and A through Z, and the digits 0 through 9. The first character of an object name must be either a letter or a dollar sign.

en_CAEnglish