SET QUOTING

Specifies if quotation marks are required for character strings.

Syntax

SET QUOTING ON|OFF

Comments

The QUOTING option is set OFF by default.

Setting QUOTING ON causes the software to issue a warning message each time it encounters a non-numeric character string not enclosed in quotation marks (i.e., unquoted character strings that are valid numbers do not elicit warnings).

The SET QUOTING ON command can be used to reinforce the distinction between character strings and object names (reserved words and the names of objects in your application). While you are reminded to enclose character strings in quotation marks, you are not forced to comply. The software continues to accept unquoted character strings, because the messages being issued are warnings, not errors. Warning messages can be turned off with SET WARNINGS OFF or a SET MESSAGES OFF command.

The SET QUOTING command is not affected by the SET RESET and SET RESTORE commands.

Example

set quoting on
let Name = Smith

When the LET command is encountered, a warning message is issued because Smith is not enclosed in quotation marks.

set quoting on
find employees
let Name = “Smith”
let Name = FirstName
let Salary = 20000

No warnings are issued: Smith is enclosed in quotation marks; FirstName is a field name; and 20000 is a valid number.

See Also

COMPILE

PAUSE

Quotation Marks

SET FLOW

Controls the call tracing of procedures.

Syntax

SET [LOCAL] FLOW ON|OFF

Parameters

LOCALThe command is to take effect only within the current procedure.

Comments

Call tracing messages show shifts in execution control from one procedure to another. The SET FLOW command controls call tracing.

FLOW is OFF by default.

When FLOW is ON, the call tracing feature issues messages when the software enters or exits a procedure.

When entering procedurename, the message takes the form:

[nn ]–> procedurename

When exiting procedurename, the message takes the form:

[nn ]<– procedurename

where nn indicates the level of nesting represented by procedurename.

When procedurename is entered from a compiled procedure, the message is modified to read:

[nn ]–> procedurename

SET FLOW is not affected by the SET RESET and SET RESTORE commands.

Example

procedure DoCusts
set local flow on

The preceding command traces procedure calls only when those calls are made from procedure DoCusts.

set flow on

The preceding command causes the software to trace all procedure calls until otherwise notified.

See Also

RETURN

SET TRACEOUTPUT

SET SIZE

Sets the estimated number of records in an EntitySet, relationship, application document, or result set.

Syntax #1

SET SIZE object size

or

SET object SIZE size

Parameters

object

The name of an EntitySet, a relationship with fields, a structured application document, or a result set.

size

A positive number representing the estimated number of records in object.
A size of 0 instructs the software to use an internal default value for the size of object.

Comments

The SET SIZE command supplies the strategy analyzer with your estimate of the number of records in object. SET SIZE has no effect on the AvgSize field associated with object in the Object Dictionary.

The SET SIZE command is not affected by the SET RESET and SET RESTORE commands.

Example

To set the estimated number of records in the EntitySet Employees to 5000, use

set size Employees 5000

 

See Also

SET SELECTIVITY

SET COMPILEMODE

SET COMPILEMODE

Controls the behavior of the Compiler.

Syntax

SET COMPILEMODE SQLMODE | ZIMMODE | SERVERMODE

Comments

The COMPILEMODE option is set to SQLMODE by default. The compiler generates SQL database code—that is, code bound to a particular SQL database type.

In ZIMMODE, EntType, RelType, and so on, are ignored. The compiler generates standard Zim code.

In SERVERMODE the compiler generates Zim Server code when the objects are defined as “zimserv” (or an alias of it). SERVERMODE is the preferred setting since ZIM execution is most often more efficient. Also,  Zim Server requests if all entity sets and relationships in the command are for the same Zim server.

When COMPILEMODE is SQLMODE, Zim generates code that is bound to a particular SQL database type. By setting COMPILEMODE to ZIMMODE, Zim generates standard Zim code.

If a program has been compiled with SERVERMODE or SQLMODE on, the program is flagged as compiled for a server and can only be executed in SERVERMODE or SQLMODE. In ZIMMODE, these types are ignored and all entity sets and relationships are assumed to be part of the local Zim database. During compilation in ZIMMODE, no server requests are stored in the compiled code and the program is flagged as compiled for Zim. Executing such a program never results in server access.

Example

To compile a Zim Client-server application to run as a standard Zim application, enter

> set compilemode zimmode

See Also

COMPILE

SET EXECUTEMODE

SET SQLCOMPILE

UPDATE

SET DELIMITER

Specifies the current field delimiter.

Syntax

SET DELIMITER character

Parameters

characterAny valid character. The space, forward slash, comma, and quotation mark are the most commonly used.
If character is not a letter or a digit, it must be enclosed in quotation marks.
If character is a special character such as space or backslash, it must be enclosed in quotation marks.
If character is a string longer than one character in length, only the first character in the string is used as the delimiter.

Comments

The default field DELIMITER is the space character.

The specified character is used as a delimiter by the INPUT command (input from the terminal), by the ADD and CHANGE commands (input from an unstructured application document), and by the LIST and OUTPUT commands (output to the terminal or an unstructured application document) in either normal or comma-delimited format.

If the space is specified as the delimiter, then tab is also acknowledged as a delimiter, and multiple spaces are considered to constitute a single delimiter.

In comma-delimited format, the space causes the comma to be used as the delimiter for both input and output.

Example

set delimiter “/”

set delimiter ‘”‘

set delimiter “‘”

In the preceding examples, the slash, double quotation mark, and single quotation mark, respectively, are specified as the delimiter. (Only one delimiter character can take effect at one time.)

See Also

SET INPUT FORMAT

SET OUTPUT FORMAT

SET SPECIALSCAN

SET TEXTDELIMITER

SET MEMBERCOUNT

Turns set-processing messages on and off.

Syntax

SET MEMBERCOUNT ON|OFF

Comments

When MEMBERCOUNT is set ON, messages tracking the progress of set-processing commands are output. Messages overwrite each other at intervals specified by the SET MEMBERINTERVAL command.

Progress messages take the form nnn processed. Messages are output with a carriage return but with no line feed; therefore, successive messages are written to the same screen position.

The printing of progress messages can slow execution slightly.

Example

> set membercount on
> set member interval 10
> find Employees
200 processed.
200 selected.
>

The number of records processed and selected are displayed in increments of ten until all records are processed.

See Also

$MemberCount

SET ERRORS

SET MEMBERINTERVAL

SET DEPENDENCY

Specifies if dependencies between objects are to be tracked.

Syntax

SET DEPENDENCY ON|OFF

Comments

The DEPENDENCY option is set ON by default.

When DEPENDENCY is ON, dependency information is stored when you CREATE, ERASE, or RENAME an object in the Object Dictionary. (For example, creating a relationship establishes dependencies between the relationship, the objects being related, and any fields belonging to the relationship.) Similarly, when you PARSE or COMPILE an application program, the dependencies of the program on objects referenced directly in the program is tracked. Dependency information is used by the system variable $compilestatus, and can also be used to document objects and programs.

You can save a small amount of disk space by switching dependency information OFF.

The SET DEPENDENCY command is not affected by the SET RESET and SET RESTORE commands.

See Also

DEPENDENCY

SET XREF

SET COLUMNSPACING

Controls the spacing between columns in the output of LIST and OUTPUT commands.

Syntax

SET COLUMNSPACING num

Parameters

numNum can be
an integer constant (e.g., 15, 200),
a variable, form field, menu item, or parameter that evaluates to an integer,
A setting of zero is valid.

Comments

The COLUMNSPACING option is set to 1 by default.

The SET COLUMNSPACING command specifies the number of spaces to be inserted between successive columns in the output generated by the LIST, SELECT, and OUTPUT commands.

Example

To specify three spaces between columns, use the following:

set columnspacing 3

 

See Also

LIST

OUTPUT

SELECT

SET VALIDDATE

Sets the minimum acceptable date.

Syntax

SET VALIDDATE min_date

Parameters

min_dateThe minimum acceptable date (e.g. 19000101)

Comments

Example

By default, the minimum acceptable date in Zim is 0. The following assignments are accepted without warnings

>let nDate = 0.

>let pDate = 19991231.

>let qDate = 20010101.

 

However, when the minimum acceptable date is set to 20000101, the first two assignments generate warnings:

>let nDate = 0.

*** Warning *** DATE value is invalid but the operation was performed.

>let pDate = 19991231.

*** Warning *** DATE value is invalid but the operation was performed.

 

The following assignment executes without warnings:

>let qDate = 20010101.

SET BREAKABLE

Controls the availability of the “break” key to the application user.

Syntax

SET BREAKABLE ON|OFF

Comments

The BREAKABLE option is set ON by default.

When BREAKABLE is ON, the application user may press the “break” key to terminate any command being executed. SET BREAKABLE OFF instructs the software to ignore the signal generated by the terminal “break” key.

The SET BREAKABLE command is not affected by the SET RESET and SET RESTORE commands.

 

See Also

$BreakFlag

en_CAEnglish