$tanh

Calculates the hyperbolic cosine of a number.

Syntax

$tanh(number)

Parameters

numbera number, or an expression that evaluates to a number, representing an angle (in radians)

Return Value

Number, with the same number of decimal places as number.

Comments

This function calculates the hyperbolic tangent of a number.

Example

let vAngle = $tanh(3.000)

Evaluates to 0.995.

See Also

$atan

$cos

$sin

About Functional Expressions

QUITTRANSACTION

Marks the end of a transaction in progress, discarding the results.

Syntax

QUITTRANSACTION

Comments

The QUITTRANSACTION command ends the explicit transaction in progress and discards any changes or updates made to the database since the TRANSACTION command was issued.

The QUITTRANSACTION command is ignored in single-user environments. In multi-user systems, QUITTRANSACTION takes effect only if an explicit transaction is in progress.

The QUITTRANSACTION command sets the system variable $InTransaction to “0” ($False).

 

See Also

BEGIN WORK

COMMIT WORK

ENDTRANSACTION

ROLLBACK WORK

SET TRANSACTION FLOW

CONTINUE

Restarts a WHILE loop.

Syntax

CONTINUE

Comments

Any IF or CASE statements that are still open when a CONTINUE command is executed are automatically closed off when execution returns to the start of the WHILE loop.

Example

while Salary > 20000

  … other commands …

if var1 = 1

continue

else

  … more commands …

endif

… still more commands …

endwhile…

commands after the while loop …

If var1 is currently set to 1, execution returns to the WHILE command. All commands between CONTINUE and ENDWHILE are ignored, and the “open” IF statement is automatically closed.

 

See Also

BREAK (Loops)

GOTO

$UserID

The current user’s operating system user ID.

Syntax

$userid

Return Value

A number, or $Null. Can be reset by an application program.

Description

The current user’s operating system user ID; otherwise, $Null.

You can use the $UserID and $GroupID system variables to build levels of security into your applications.

During any Zim session, you can LOGIN under any defined UserName (in EntitySet Users). $ZUserID and $ZGroupID are then set to the UserID and GroupID associated with UserName; $UserID and $GroupID (containing values taken from the operating system) are still available for use.

See Also

$GroupID

$ZGroupID

$ZUserID

$filenum

Returns the number of the disk file associated with a specified object.

Syntax

$filenum(objname)

Parameters

objnameThe name of an EntitySet, relationship, application directory, or application document.

Return Value

For EntitySets, relationships, and application directories, $filenum returns the number associated with the file that contains the specified object.

For application documents, $filenum returns the number associated with the file that contains the application directory in which the application document was created.

See Also

$filepath

$ObjSetProperty

Set the properties of an ActiveX object.

Syntax

$ObjSet[Property] (Object, PropertyName, <>)

Parameters

Objectan object variable or formfield of type OLE
PropertyNamea string or an expression that evaluates to a string
PropertyValueone or more strings, expressions or variables

Return Value

Returns a result of TRUE if successful.

Comments

This syntax can be used to set basic or extended properties of an ActiveX component.

Example

Assume you have a form called treeview with a treeview component on it called tree.

Assume vResult is a variable of type char 1. The syntax to direct the Treeview component to display lines among sibling nodes, parent nodes and the root node is

let vResult = $ObjSetProperty (treeview.tree, 'linestyle', 1)

Warning

COM objects are being discontinued by Microsoft and may not be available in future releases of Zim-X.

#(Macro call)

Marks a call to a macro in an application program.

Syntax

#<macroname>

where

macronameThe name of a global or local macro.

Return Value

A macro call returns the current value of the macro or the null string (”).

Comments

This command calls a particular macro in an application program.

A macro is a dynamically declared name that represents a character string. When a macro call is encountered in an application program, the macro call is replaced by the current character value of the macro.

A macro acquires values in one of two ways: implicitly, when the software encounters a call to a previously unknown global macro or unassigned local macro, or explicitly, in a LET or INPUT statement or a call to a local macro.

Programs with macro references cannot be compiled because the macros take the current references at the time of the compilation.

Example

Example of Using # (Macro call) and <> (Macro name delimiters)

let  = "ENT"

Defines the global macro to represent the string ENT. Then the statement

list #s format #Name

is interpreted as

list ENTs format ENTName

SET XMLHEADER

Controls the display of a XMLHEADER.

Syntax

SET XMLHEADER ON|OFF

Comments

When outputting data using the XML or XMLSIMPLE formats, a standard ISO header can be attached to the resulting document.

Example

set save

set output format xmlsimple

set XMLHEADER on

set output MyDoc

list 1 Docs

set restore

 

See Also

SET OUTPUT FORMAT

SET CURSOR

Switches the display of the text-entry cursor on or off.

Syntax

SET CURSOR ON|OFF

Comments

The CURSOR option is set ON by default.

When CURSOR is ON, the text-entry cursor is displayed on the screen when a text form field has focus. You can switch the text-entry cursor off when its logical location is already indicated by enhanced display attributes in the form field (specified using the FORM SET command). For example, you could switch the text-entry cursor off in menus.

Some terminal types do not enable the text-entry cursor to be switched off; in these cases, SET CURSOR OFF has no effect. In some environments with attached terminals, the sequences that turn the text-entry cursor on and off must be included in your terminal description file.

 

See Also

CURSOR

SET PAUSE

Controls the use of pauses during LIST output.

Syntax

SET PAUSE ON|OFF

Comments

The PAUSE option is set OFF by default.

When you set PAUSE ON, LIST output pauses after each “page” (i.e., the number of lines specified in the current PAGESIZE setting).

During a pause at the terminal, the message Press to continue, q to quit appears. (This message can be altered with ZIMLANG, the Language Customizer utility, if desired.)

Example

set output printer
set pause on
set pagesize 40
set pagewidth 120
list all Employees sorted by Department

The above SET PAUSE command ensures that the printer stops after each page, enabling you (for example) to manually feed a special form for each page of output.

 

See Also

SET HEADINGS

SET PAGEWIDTH

en_CAEnglish