バージョン 4.2.5
 —  ステートメント  —

変数定義

DEFINE DATA LOCALDEFINE DATA INDEPENDENTDEFINE DATA CONTEXT、および DEFINE DATA OBJECT で使用する variable-definition では、scalar-definition または array-definition のいずれかを指定できます。

../graphics/cbo2.gif

<scalar-definition>
<array-definition>

../graphics/cbc2.gif

<scalar-definition>

variable-name

(format-length)

CONSTANT
INIT

init-definition

[emhdpm]

A
U
B

DYNAMIC

<array-definition>

variable-name

(format-length/ array-definition)

CONSTANT
INIT

array-init-definition

[emhdpm]

A
U
B

/array-definition

DYNAMIC

このドキュメントでは、次のトピックについて説明します。

構文図で使用されている記号については、「構文記号」を参照してください。


機能

variable-definition を使用して、単一の値(スカラ)または複数の値(配列)を持つ単一のフィールド/変数を定義します。

Top of page

構文説明

variable-name

変数に割り当てられる名前。 Natural 変数名のルールが適用されます。 DEFINE DATA INDEPENDENT で使用する場合、変数名はプラス文字(+)で始まる必要があります。

ユーザー定義変数の命名規則については、『Natural の使用』ドキュメントの「ユーザー定義変数の命名規則」を参照してください。

format-length フィールドのフォーマットおよび長さ。 ユーザー定義変数のフォーマットおよび長さの定義については、『プログラミングガイド』の「ユーザー定義変数のフォーマットおよび長さ」を参照してください。
A、U、または B データタイプ:ダイナミック変数用の英数字(A)、Unicode(U)、またはバイナリ(B)。
array-definition array-definition の場合、配列定義の次元の下限と上限を定義します。 「配列の次元の定義」を参照してください。
DYNAMIC フィールドは、DYNAMIC として定義できます。 ダイナミック変数の処理については、「ラージ変数/フィールドとダイナミック変数/フィールド」を参照してください。
CONSTANT

変数/配列は、指定された定数として処理されます。 割り当てられた定数値は、変数/配列が参照されるたびに使用されます。 割り当てられた値は、プログラムの実行中には変更できません。

プログラミングガイド』の「フィールドの定義」、「ユーザー定義定数」、および「名前付き定数の定義」も参照してください。

注意:
内部処理の理由から、1 つのグループ定義内で変数定義と定数定義を混在させることは許可されていません。つまり、1 つのグループに含めることができるのは、変数か定数のいずれかのみです。 CONSTANT 節を DEFINE DATA INDEPENDENT および DEFINE DATA CONTEXT で使用することはできません。 CONST 節を X-array と一緒に使用することはできません。

INIT

変数/配列に初期値が割り当てられます。 この値は、変数/配列が RESET INITIAL ステートメントで参照されるときにも使用されます。

INIT 指定をしない場合、フィールドはそのフォーマットに対応するデフォルトの初期値で初期化されます(下記の「デフォルトの初期値」を参照)。

プログラミングガイド』の「フィールドの定義」の「初期値」も参照してください。

注意:
DEFINE DATA INDEPENDENT および DEFINE DATA CONTEXT では、INIT 節は、その節を含む、各実行プログラミングオブジェクトで評価されます(変数を割当てるプログラミングオブジェクト内だけではありません)。 これは、グローバル変数の INIT の動作とは異なります。 INIT 節を X-array と一緒に使用することはできません。

init-definition init-definition オプションを使用して、変数の初期値および定数値を定義します。 「初期値の定義」を参照してください。
array-init-definition array-init-definition を使用して、配列の初期値および定数値を定義します。 「配列用の初期値/定数値」を参照してください。
emhdpm このオプションを使用して、フィールド/変数に有効な追加のパラメータを定義できます。 「フィールド/変数の EM、HD、PM パラメータ」を参照してください。

デフォルトの初期値

フォーマット デフォルトの初期値
B、F、I、N、P 0
A、U  (空白)
L FALSE
D D' '
T T'00:00:00'
C (AD=D)
オブジェクトハンドル NULL-HANDLE

DYNAMIC として宣言されたフィールドは、フィールド長がデフォルトで 0 なので、初期値を持ちません。

Top of page