The variable-definition
option is
used with DEFINE DATA
LOCAL
, DEFINE DATA
INDEPENDENT
, DEFINE
DATA CONTEXT
and DEFINE DATA OBJECT
.
In the variable-definition
option, you may specify either a
scalar-definition
or an
array-definition
:
variable-name | (format-length) | init-definition | [emhdpm] | |||||||||||
DYNAMIC |
variable-name | (format-length/ array-definition) | array-init-definition | [emhdpm] | ||||||||||||
/array-definition | DYNAMIC |
This document covers the following topics:
For an explanation of the symbols used in the syntax diagram, see Syntax Symbols.
A variable-definition
is used to
define a single field/variable that may be single-valued (scalar) or
multi-valued (array).
Syntax Element | Description |
---|---|
variable-name |
Variable Name:
The name to be assigned to the variable. Rules for Natural variable
names apply. With For information on naming conventions for user-defined variables, see Naming Conventions for User-Defined Variables in Using Natural Studio. |
format-length |
Format/Length Definition:
For information on format/length definition of user-defined variables, see Format and Length of User-Defined Variables in the Programming Guide. |
A , U or
B |
Data Type:
Alphanumeric (A), Unicode (U) or binary (B) for dynamic variables. |
array-definition |
Array Dimension
Definition:
With an
For further information, see Array Dimension Definition. |
DYNAMIC |
DYNAMIC Option:
A field may be defined as For more information on processing dynamic variables, see Introduction to Dynamic Variables and Fields. |
CONSTANT |
CONSTANT Option:
The variable/array is to be treated as a named constant. The constant value(s) assigned will be used each time the variable/array is referenced. The value(s) assigned cannot be modified during program execution. See also Defining Fields, User-Defined Constants, Defining Named Constants in the Programming Guide. Note: |
INIT |
INIT Option:
The variable/array is to be assigned an initial value. This value
will also be used when this variable/array is referenced in a
If no For further information, see Defining Fields, Initial Values in the Programming Guide. Note: |
init-definition |
Initial-Value
Definition:
With the |
array-init-definition |
Initial/Constant Values for an
Array:
With an
For further information, see Initial/Constant Values for an Array. |
emhdpm |
EM, HD, PM Parameters for
Field/Variable:
With this option, additional parameters to be in effect for a field/variable may be defined. For further information, see EM, HD, PM Parameters for Field/Variable. |
The following table shows the default initial values that are provided with the various formats:
Format | Default Initial Value |
---|---|
B, F, I, N, P | 0 |
A, U | (blank) |
L | FALSE |
D | D' ' |
T | T'00:00:00' |
C | (AD =D )
|
GUI Handle | NULL-HANDLE |
Object Handle | NULL-HANDLE |
Fields declared as DYNAMIC
do not have any initial value
because their field length is zero by default.