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

ローカルデータの定義

DEFINE DATA LOCAL の一般的な構文:

../graphics/sbo3.gif

LOCAL

../graphics/cbo3.gif

USING

../graphics/cbo2.gif

local-data-area

../graphics/cbc2.gif

../graphics/cbc3.gif

../graphics/sbc3.gif

../graphics/dot3.gif

parameter-data-area
data-definition ../graphics/dot3.gif

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

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


機能

DEFINE DATA LOCAL ステートメントでは、アプリケーション内にある単一の Natural モジュールによって排他的に使用されるデータ要素を定義します。 これらのデータ要素またはフィールドは、ステートメント自体の中で定義できます(data-definition を参照)。または、データエリアを参照するステートメントを使用して、プログラムの外にある別のローカルデータエリア(LDA)やパラメータデータエリア(PDA)でデータ要素またはフィールドを定義することもできます。

Top of page

制限事項

LDA とそれを参照するオブジェクトは、同じライブラリ(または STEPLIB)に含まれている必要があります。

Top of page

構文説明

local-data-area ローカルデータエリアには、DEFINE DATA LOCAL ステートメントに含めることができる定義済みのデータ要素が格納されます。 複数のデータエリアを参照できますが、その場合は次の例のように、予約語 LOCAL および USING を繰り返す必要があります。
DEFINE DATA LOCAL
  LOCAL USING DATX_L
  LOCAL USING DATX_P

  ...
END-DEFINE ;
詳細については、『プログラミングガイド』の「別のデータエリアでのフィールドの定義」、「ローカルデータエリア」、および「例 2」を参照してください。
parameter-data-area また、DEFINE DATA LOCAL ステートメントで参照するデータエリアは、パラメータデータエリア(PDA)でもかまいません。 PDA を LDA として使用することにより、PDA と同じ構造を持つ LDA を作成する手間を省くことができます。
data-definition 下記の「ダイレクトデータ定義」を参照してください。
END-DEFINE Natural 予約語 END-DEFINE を使用して、DEFINE DATA ステートメントを終了させる必要があります。

ダイレクトデータ定義

ローカルデータは、プログラムまたはルーチン内で直接定義できます。 ダイレクトデータ定義には、次の構文が適用されます。

level

group-name [(array-definition)]

variable-definition
view-definition
redefinition
handle-definition

詳細については、次を参照してください。

ダイレクトデータ定義の構文要素の説明

level

レベル番号は 01~99 の範囲内の 1 桁または 2 桁の数字(先頭の 0 は任意)を使用し、フィールドグルーピングと合わせて使用します。 02 またはそれ以上のレベル番号が割り当てられたフィールドは、それより小さいレベル番号が割り当てられた直前のグループの一部であるとみなされます。

グループを定義すると、グループ名を使用して一連のフィールド(または 1 つのフィールドのみ)を参照できます。 特定のステートメント(CALLCALLNATRESETWRITE など)の場合、グループ名をショートカットとして指定し、グループに含まれるフィールドを参照することもできます。

グループには、他のグループを含めることができます。 グループにレベル番号をつけるときは、レベル番号を飛ばしてはなりません。

ビューの定義は常にレベル 1 で定義する必要があります。

group-name

グループの名前。 名前は、Natural 変数名の定義ルールに準拠していなければなりません。 次のセクションも参照してください。

array-definition array-definition の場合、配列定義の次元の下限と上限を定義します。 「配列の次元の定義」を参照してください。
variable-definition variable-definition を使用して、単一の値(スカラ)または複数の値(配列)を持つ単一のフィールド/変数を定義します。 「変数定義」を参照してください。
view-definition view-definition を使用して、データ定義モジュール(DDM)から派生したビューを定義します。 「ビューの定義」を参照してください。
redefinition redefinition を使用して、グループ、ビュー、DDM フィールド、単一のフィールド/変数(スカラまたは配列)を再定義できます。 「再定義」を参照してください。
handle-definition ハンドルは、コードのダイアログエレメントを特定し、ハンドル変数に格納されます。 「ハンドルの定義」を参照してください。

Top of page