The general format of an @function is:

@function-name(argument1 ; argument2 ; ... argumentn);

An @function consists of the name of the @function followed by arguments, if any. The first character of the name of an @function is always @.


Enclose @function arguments in parentheses.


Omit parentheses for @functions without arguments.


Multiple arguments

Separate multiple arguments with a semicolon.

@IsCategory("Yes"; "No")
@Middle(Company; 4; 4)

Keyword arguments

Enclose keyword arguments in brackets. @Abstract, @Command, @PostedCommand, @DocMark, @GetPortsList, @PickList, @MailSend, @Name, and @Prompt use keyword parameters.

@Prompt([OK]; "Response"; Y)
@Name([CN]; AUTHOR)

You can also assign a keyword to a variable. For instance, the following assignment is valid:

o := [OK];
@Prompt(o;"Database title";@DbTitle)

Argument data types

Specify the correct data type for each @function argument per the @function description. For example, the first argument to @Prompt must be a keyword. If the keyword is [OK], it must be followed by two arguments of type text.

@Prompt([OK]; "The answer is ..."; @Text(N));