次の構文は、ダイレクトコールに指定できる各種バッファ間の関係を表しています。 この構文は、どのバッファ指定が他のバッファ指定の存在に依存しているかを把握するのに役立ちます。
注意:
[format-buffer record-buffer... [multifetch-buffer]]... [search-buffer value-buffer] [ISN-buffer] [user-buffer] ... [performance-buffer]
次の表では、この構文のエレメントについて説明します。
エレメント | 説明 | 条件 |
---|---|---|
format-buffer | コールに使用するフォーマットバッファセグメントです。 各フォーマットバッファセグメントは、ピリオドで終了し、単独のフォーマットバッファとして完結した有効なものである必要があります。 | Adabas
読み込みコマンドまたは更新コマンドの実行中に処理するフィールドを指定する必要がある場合にのみ必須です。
必須の場合、ACBX インターフェイスダイレクトコールに複数のフォーマットバッファを指定できます。 ACB インターフェイスダイレクトコールには、1 つのフォーマットバッファのみ指定できます。 コールにフォーマットバッファを指定する場合は、対応するレコードバッファも指定する必要があります。 ACBX インターフェイスダイレクトコールの場合、レコードバッファを指定しないと、フォーマットバッファのペアとなるダミーのレコードバッファ(長さゼロ)が作成されます。 ACB インターフェイスダイレクトコールの場合、レコードバッファを指定しないと、処理エラーが発生します。 ACBX インターフェイスダイレクトコールの場合は、対応するマルチフェッチバッファを指定することもできます。 |
ISN-buffer | コールに使用する ISN バッファセグメントです。 | ストレージ内に ISN を格納するためのエリアを確保する必要がある場合、または(ACB
インターフェイスダイレクトコールでは)マルチフェッチまたはプリフェッチしたレコードのレコードディスクリプタエレメント(RDE)を格納するためのエリアを確保する必要がある場合にのみ必須です。
必須の場合、コールに ISN バッファを 1 つのみ指定します。 |
multifetch-buffer | ACBX インターフェイスコールに使用するマルチフェッチバッファセグメント。 このバッファは、ACBX インターフェイスダイレクトコールにのみ使用できます。 | ACBX
インターフェイスダイレクトコールでのみ使用されます。また、マルチフェッチしたレコードのレコードディスクリプタエレメント(RDE)を格納するためのエリアをストレージ内に確保する必要がある場合にのみ必須です。
必須の場合、ACBX インターフェイスダイレクトコールに複数のマルチフェッチバッファを指定できます。 マルチフェッチバッファを指定した場合は、対応するフォーマットバッファおよびレコードバッファも指定する必要があります。 対応するバッファを指定しないと、マルチフェッチバッファに対応するダミーのフォーマットバッファおよびレコードバッファ(長さゼロ)が作成されます。 |
performance-buffer | ACBX インターフェイスコールに使用するパフォーマンスバッファセグメント。 このバッファは、ACBX インターフェイスダイレクトコールでのみ使用でき、Adabas Review でのみ使用されます。 | 必須ではありません。 Adabas Review による ACBX インターフェイスダイレクトコールでのみ使用されます。 詳細については、Adabas Review のドキュメントを参照してください。 |
record-buffer | コールに使用するレコードバッファセグメントです。 | コールに必要なレコードデータまたはコール用に収集したレコードデータを格納するためのエリアをストレージに確保する場合にのみ必須です。
必須の場合、ACBX インターフェイスダイレクトコールに複数のレコードバッファを指定できます。 ACB インターフェイスダイレクトコールには、1 つのレコードバッファのみ指定できます。 コールにレコードバッファを指定する場合は、対応するフォーマットバッファも指定する必要があります。 ACBX インターフェイスダイレクトコールの場合、フォーマットバッファを指定しないと、レコードバッファのペアとなるダミーのフォーマットバッファ(長さゼロ)が作成されます。 ACB インターフェイスダイレクトコールの場合、フォーマットバッファを指定しないと、処理エラーが発生します。 ACBX インターフェイスダイレクトコールの場合は、対応するマルチフェッチバッファを指定することもできます。 |
search-buffer | コールに使用するサーチバッファセグメントです。 | コール対象レコードの選択時に検索条件が必要な場合にのみ必須です。
コールにサーチバッファを指定する場合は、対応するバリューバッファも指定する必要があります。 単一のダイレクトコールに指定可能なサーチバッファとバリューバッファのペアの数は 1 つだけです。 |
user-buffer | コールに使用するユーザーバッファセグメント(拡張)です。 ユーザーバッファ拡張(UBX)は、Adabas ニュークリアスユーザー出口 11 と 4、および Adalink ユーザー出口 1 と 2(Adabas 7 のユーザー出口 A と B)に渡されるユーザーデータに使用されます。 | ACBX インターフェイスダイレクトコールでのみ使用されます。また、コールで Adabas ニュークリアスユーザー出口 11 と 4、および Adalink ユーザー出口 1 と 2(Adabas 7 のユーザー出口 A と B)への入力が必要になる場合にのみ必須です。 単一のダイレクトコールに指定できるユーザーバッファは 1 つだけです。 |
value-buffer | コールに使用するバリューバッファセグメントです。 | コール対象レコードの選択時に検索条件が必要な場合にのみ必須です。
コールにバリューバッファを指定する場合は、対応するサーチバッファも指定する必要があります。 単一のダイレクトコールに指定可能なサーチバッファとバリューバッファのペアの数は 1 つだけです。 |