バージョン 8.1.3
 —  コマンドリファレンス  —

バリューバッファ

サーチバッファとバリューバッファは、次の定義を行うときに、対で使用します。

バリューバッファを指定した場合、サーチバッファも指定されているものと見なされます。 指定しないと、バリューバッファのペアとなるダミーのサーチバッファが作成されます。 それぞれのタイプの ABD またはバッファ間の関係については、「バッファタイプ間の関係」を参照してください。

単一の Adabas ダイレクトコールに指定可能なサーチバッファとバリューバッファのペアの数は 1 つだけです。

ユーザーは、サーチバッファに検索式を、バリューバッファには検索式に対応する値を指定します。

サーチバッファに指定した各ディスクリプタの値をバリューバッファに指定します。

検索式がコマンド ID であれば、バリューバッファに対応するエントリを作成しません。


バリューバッファの構文

指定する各値は、サーチバッファに指定した各検索式と同じ順序でなければなりません。 指定する全値は、サーチバッファに指定した検索式に対応して同じ順序でなければならず、(サーチバッファに長さとフォーマットを指定しないとき)サーチバッファ内の関連するディスクリプタの標準長と標準フォーマットに一致していなければなりません。

間に空白を入れたり、他のコンマなどの文字をバリューバッファ内の値の間に挿入することはできません。 バリューバッファの末尾にピリオドを指定する必要はありません。

Top of page

SQL 空値とインジケータ

NC(SQL 空値 "NOT COUNTED")オプション付きで定義されたフィールドを検索するときは、サーチバッファのフィールド定義に空値シグニフィカンス(S)インジケータを付け、対応するバリューバッファ引数値に 2 バイトのバイナリ空値インジケータを示さなければなりません。 バリューバッファの空値インジケータの説明や例については、「S(シグニフィカンス)と空値インジケータ」を参照してください。

Top of page

符号の取り扱い

バイナリ値は符号なしの数として扱います。 固定小数点、アンパックおよびパックの値は符号付数値として扱います。 指定できる有効な符号については、このセクションで説明します。

固定値の符号

固定値の場合、符号はビット 0(高位のビット)にあります。

以下に固定値の符号の例を 2 つ示します。16 進数と 10 進数で表記しています。

00000005 = +5
FFFFFFFB = -5

アンパック値の符号

アンパック値の場合、符号は下位バイトの高位 4 ビットにあります。

以下にアンパック値の符号の例を 2 つ示します。16 進数と 10 進数で表記しています。

F1F2F3  = +123
F1F2D3  = -123

パック値の符号

パック値の場合、符号は下位バイトの下位 4 ビットにあります。

パックフィールドから生成したスーパーディスクリプタに対して検索値を指定する場合、正の符号には F を、負の符号には D を指定する必要があります。

以下にパック値の符号の例を 2 つ示します。16 進数と 10 進数で表記しています。

X'123F' = +123
X'123C' = +123
X'123D' = -123

Top of page