ビューの定義

view-name VIEW [OF] ddm-name

level

../graphics/cbo4b.gif

ddm-field

([format-length][/array-definition])

[emhdpm]

../graphics/sbc5.gif

 
(

../graphics/cbo2.gif

A
U
B

../graphics/cbc2.gif

[/array-definition] )DYNAMIC
redefinition

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

view-definition オプションを使用して、データ定義モジュール(DDM)から派生したデータビューを定義します。

注意:
パラメータデータエリアでは、view-definition を使用できません。

詳細については、『プログラミングガイド』の「Adabas データベースのデータへのアクセス」で、特に次のトピックを参照してください。


構文説明

構文要素 説明
view-name
ビュー名:

ビューに割り当てられる名前。

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

VIEW [OF] ddm-name
DDM 名:

ビューを取得する元のデータ定義モジュール(DDM)の名前。

level
レベル番号:

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

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

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

ddm-field
DDM フィールド名:

DDM から取得されるフィールドの名前。

HISTOGRAM ステートメントのビューを定義する場合、ビューには、HISTOGRAM を実行するディスクリプタのみが含まれている必要があります。

redefinition
再定義:

redefinition を使用して、グループ、ビュー、DDM フィールド、単一のフィールド/変数(スカラまたは配列)を再定義できます。

詳細については、「再定義」を参照してください。

format-length
フォーマット/長さの定義:

フィールドのフォーマットおよび長さ。省略した場合、これらは DDM から取得されます。

ストラクチャードモードでは、フォーマットおよび長さの定義(提供される場合)を、DDM に指定されているフォーマットおよび長さと同じにする必要があります。

レポーティングモードでは、フォーマットおよび長さの定義(提供される場合)と、DDM に指定されているフォーマットおよび長さとの間で、タイプの互換性を確保する必要があります。

AU または B
データタイプ:

ダイナミック変数用の英数字(A)、Unicode(U)、またはバイナリ(B)。

注意:

  1. メインフレームコンピュータ上の Adabas では、フォーマット U を LA フィールド(長さ <= 16381 バイト)に使用できますが、LB フィールド(長さ<= 1 GB)には使用できません。
  2. フォーマット B は、Adabas では使用できません。
array-definition
配列定義:

使用されているプログラミングモードによっては、配列(ピリオディックグループフィールド、マルチプルバリューフィールド)にオカレンス数に関する情報を含める必要が生じる場合があります。

詳細については、下記の「ビューの配列定義」を参照してください。

emhdpm
フィールド/変数の EM、HD、PM パラメータ:

このオプションを使用して、フィールド/変数に有効な追加のパラメータを定義できます。「フィールド/変数の EM、HD、PM パラメータ」を参照してください。

DYNAMIC
DYNAMIC オプション:

ビューフィールドを DYNAMIC として定義します。

ダイナミック変数の処理の詳細については、『プログラミングガイド』の「ダイナミック変数およびフィールドについて」を参照してください。

ビューの配列定義

使用されているプログラミングモードによっては、配列(ピリオディックグループフィールド、マルチプルバリューフィールド)にオカレンス数に関する情報を含める必要が生じる場合があります。

ストラクチャードモード

配列を表すビューでフィールドを使用する場合は、次のことが適用されます。

  • MU フィールドおよび PE フィールドのインデックス値を指定する必要があります。

  • フォーマット/長さ指定をしない場合、値は DDM から取得されます。

  • フォーマット/長さ指定をする場合は、フォーマットおよび長さを DDM のものと同じにする必要があります。

ストラクチャードモードでのデータベース固有の考慮事項:

Adabas: MU フィールドおよび PE フィールド(DDM で定義)をビューの中で使用する場合は、これらのフィールドを配列の添字指定に含める必要があります。MU フィールドまたは通常の PE フィールドに対しては、例えば (1:10) のように 1 次元の添字範囲を指定します。PE グループの中にある MU フィールドに対しては、例えば (1:10,1:5) のように 2 次元の添字範囲を指定します。
Tamino: DDM 定義 指定可 指定不可
A(*:X2)
A(*:Y2) Y2=<X2
A(Y1:Y2) Y2>Y1
Y2=<X2 A(Z:Z+Y) Y>=0
A(*:*)
A(Y1:*)
A(X1:*)
A(Y1:*) Y1>=X1 
A(Y1:Y2) Y2>=X1, Y1>=X1
A(Z:Z+Y) Y>=0
A(*:*)
A(*:Y2)
A(X1:X2)
A(Y1:Y2) Y2<Y1 
A(Z:Z+Y) 0=<Y>=X2-X1+1
A(*:*)
A(Y1:*)
A(*:Y2)

ストラクチャードモードの例:

DEFINE DATA LOCAL
1 EMP1 VIEW OF EMPLOYEES
  2 NAME(A20)
  2 ADDRESS-LINE(A20 / 1:2)

1 EMP2 VIEW OF EMPLOYEES
  2 NAME
  2 ADDRESS-LINE(1:2)

1 EMP3 VIEW OF EMPLOYEES
  2 NAME
  2 ADDRESS-LINE(2)

1 #K (I4)
1 EMP4 VIEW OF EMPLOYEES
  2 NAME
  2 ADDRESS-LINE(#K:#K+1)
END-DEFINE
END
レポーティングモード

このモードでは、ストラクチャードモードと同じ規則が有効です。ただし、例外が 2 つあります。

  • インデックス値を提供する必要はありません。この場合、不明な次元の添字範囲は (1:1) に設定されます。

  • フォーマット/長さ指定は、DDM での指定と異なる可能性があります。その場合は、フォーマットおよび長さの定義と、DDM に指定されているフォーマットおよび長さとの間で、タイプの互換性を確保する必要があります。

例:

DEFINE DATA LOCAL
1 EMP1 VIEW OF EMPLOYEES
  2 NAME(A30)
  2 ADDRESS-LINE(A35 / 5:10)

1 EMP2 VIEW OF EMPLOYEES
  2 NAME
  2 ADDRESS-LINE(A40)        /* ADDRESS LINE (1:1) IS ASSUMED

1 EMP3 VIEW OF EMPLOYEES
  2 NAME
  2 ADDRESS-LINE             /* ADDRESS LINE (1:1) IS ASSUMED           

1 #K (I4)
1 EMP4 VIEW OF EMPLOYEES
  2 NAME
  2 ADDRESS-LINE(#K:#K+1)
END-DEFINE
END