New Features in Reality V14.2
The features below that are marked as optional are chargeable and must be
separately enabled with a software key. Contact your Northgate representative to
obtain the keys you need.
Reality V14.2 has been further enhanced to improve compatibility with
other MultiValue systems. In addition, the following features simplify
migration to Reality from other MultiValue systems.
- TCL commands. The SEARCH,
ESEARCH and
SSEARCH commands now accept
additional options to control data case-insensitivity.
- Line editor. The
editor commands that search for strings (DE,
L,
R,
SP and
TR) can now operate in both case-sensitive and -insensitive modes. The
required mode can be specified when starting the editor (the default is
the current data case setting) and changed while editing with new
CI,
CS and
=
commands. See
Search Strings
for more details.
- Screen Editor. The
screen editor commands that search for strings (L and
S) can now operate in both case-sensitive and -insensitive modes. The
required mode can be specified when starting the editor (the default is
the current data case setting) and changed while editing with the new
=
command.
- ME development editor. The ME
editor commands that search for strings (/,
L and
R) can now operate
in both case-sensitive and -insensitive modes. The required mode can be
specified when starting ME (the default is the current data case
setting) and changed while editing with new
CI,
CS and
=
commands.
This has been extended to:
- Elements 104 to 107 of the DataBasic
SYSTEM function return the
state of item-id case-sensitivity for the SYSTEM, NETWORK, USERS and
SECURITY system files.
- The SYSTEM(108) function returns whether the host operating system is
case-sensitive or -insensitive.
SQL for Reality
Although Reality files can now be case-insensitive as regards item-ids, SQL for Reality
currently remains case-sensitive. The SQLM
command has been enhanced to ignore case-insensitive files (and display an error
message to that effect) when creating or regenerating SQL tables. A new option
(W) allows you to force SQLM to convert case-insensitive files, but its use is
not recommended because SQL access to Reality files is always case-sensitive.
- Predefined V14.2 environments have been provided for Reality, D3,
mvEnterprise and mvBase. UniVerse, UniVision and UniData environments are
now available. For details of which options are set in these, use
SSM option 4 (Define Environment Settings)
or the
DEFINE-ENVIRONMENT TCL command.
- The TCL stacker command now has
UniVerse, UniVision and UniData modes, set in the
operating environment.
- The DataBasic
$OPTIONS statement now accepts keywords representing UniVerse, UniVision
and UniData systems. For each of these, an appropriate symbol is defined to control condition compilation with the
$IFDEF and
$IFNDEF statements.
- The mkdbase host command now allows you to choose UniVerse, UniVision
and UniData emulations.
- A new DEFAULT.TO.ALL
environment option allows the COPY,
CP,
CT,
ECOPY and
QSELECT TCL commands to
behave in the same way as on D3 (if the item-list parameter is omitted, the
default is *: all items). This option is set in the V14.2 D3 predefined
environment.
The information displayed by the WHO
command and user exit U50BB depends on the selected
MutliValue environment; for details,
see MultiValue Compatibility.
- English now provides default attribute definitions that allow you to specify
any attribute in an English command; for details, see the topics
Data Definition Item and
MultiValue Compatibility
in the English Reference section of the documentation.
- Certain characters have
special meanings when used in an English
HEADING or FOOTING
modifier. A new
NOOLDHEADER
environment option is set in the V14.2 MultiValue predefined environments
to inhibit this behaviour.
- The Proc A command
now allows you to specify the number of characters to be extracted from a
parameter in the input buffer.
- A new PQN.ABS.S
environment option changes the behaviour of the PQN Proc
S command so that it
will insert empty
parameters, if necessary, to allow the pointer to be set to the specified
position. This option is set in the V14.2 D3 predefined environment.
- When using the
INPUT@
statement, a format string can now start with the letter "M" (for compatibility
with other MultiValue systems).
- SYSTEM function: In Reality and D3 modes, if an item read fails because
the item is locked, SYSTEM(0) now returns the number of the port holding
the lock.
- DQUOTE and
SQUOTE functions:
In D3, AP, PICK and R83 modes, these functions search a string for a
substring enclosed in quotation marks.
- EXECUTE
statement:
- In D3 mode, the SETTING clause returns
error numbers
only, rather than error numbers and messages.
- The executed command can now be a dynamic array that includes responses
to input prompts generated by the command.
- When called from DataBasic with
ICONV or
OCONV, the information returned by user exit
U50BB depends on the MultiValue mode set with the
$OPTIONS statement. For details, see
User Exit Conversions.
- In D3 mode, strings containing only arithmetic unary operators and
decimal points are treated as numeric.
- In D3, PICK/R83 and AP modes, THEN/ELSE clauses are not required in the
OPEN,
READ,
READU,
READV,
READVU,
MATREAD and
MATREADU statements. If the
statement fails, and there is no THEN or ELSE clause, the result (returned
in the appropriate parameter) is set to null.
- DIV,
SADD and
SSUB functions:
Provide alternative ways of performing arithmetic operations.
- MSLEEP
statement: This causes a program to sleep
for a specified number of milliseconds.
- OUT statement:
Outputs raw data to the display.
- CHANGE statement:
This changes the contents of a variable by replacing all occurrences of a substring with a new substring
(cf. CHANGE function).
- TRANS function: Extracts data from a file.
- LEFT and
RIGHT functions:
These extract substrings from the beginning and end respectively of a
string.
- FOLD function: This has
been enhanced to provide greater compatibility with other MultiValue
systems.
- If omitted, the fold width now defaults to 25.
- Fold widths can be specified in a dynamic array.
- The delimiter can now be specified.
-
External functions: In additional to internal and external subroutines,
Reality V14.2 allows you to write your own functions. These are similar to
external subroutines, but return a value to the calling program and are
called in the same way as intrinsic functions. The must be defined in a
separately compiled and cataloged program module and declared before use in
the calling program. New
FUNCTION and DEFFUN
statements are now available and the
RETURN statement has been
enhanced to return a value.
- The stacker mode where reused commands are moved to the top of the stack
has been extended to include commands that are re-entered at TCL. See
. (Dot - TCL Stacker Recall Command) and
SET-STACK.
- TCL macros now combine
options on the command line with those specified in the first line of the
macro.
- The
ACCOUNT-RESTORE, M-A-R
and SEL-RESTORE
TCL commands now accept a W option that specifies that the save is from a
case-insensitive database.
- COMPARE statement:
This new statement allows you to compare two dynamic arrays.
- PERFORM statement:
The performed command can now be a dynamic array that includes responses to
input prompts generated by the command.
- DIMENSION and
COMMON statements: when
declaring a dimensioned array, you can now specify the size using defined
symbols instead of literal values.
- Dynamic array functions:
New DataBasic intrinsic functions allow you to perform
arithmetic,
string,
character,
logical, comparison
and string formatting operations on the elements in dynamic arrays.
- New functions: The
NO.NEW.FUNCS
compatibility switch matrix option allows you to exclude new DataBasic
intrinsic functions when compiling, to avoid problems caused by existing
arrays having the same names as these functions.
Reality SQL/ODBC now complies with
ODBC version 2.5 and the ODBC Applications Programming Interface (API) Level 2.
Reality's
command logging features (Audit and Support logs) have been enhanced to give
the administrator greater control over what is logged and how the information is
presented. For details, refer to the descriptions of the
AutditTclLog,
SupportTclLog,
SizeTclLog
and
TimeTclLog database configuration parameters.
- The way in which Reality updates are installed on Windows hosts now works in
a similar way to on UNIX. This permits the installation of a single update if
necessary without having to install a complete service pack. For details, refer
to the Installing Updates
section in the Reality on Windows Installation Guide and the
install_fix host command.
- On UNIX, it is no longer necessary to provide install_fix
with the full path to the required update or the directory containing the
updates.
Search Tool
- If the search text contains any punctuation characters, this now
automatically searches for the exact phrase.
- If the search text contains dot, hyphen and/or underscore separators,
this now searches for all three of these characters. This means that if you
have used the wrong separator when searching for a file or command name,
etc. you should still find what you are looking for.