RI コマンド(レコードの解放)

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


機能および使用

RI コマンドは、レコードのロック解除、またはロックレベルのダウングレード(排他から共有)に使用されます。

解放するレコードの ISN とファイル番号を指定します。

現在当ユーザーにホールドされている全レコードを解放するオプションもあります。

このコマンドは、更新していたレコードには拒否されます。

graphics/ri.png

RI Command, Procedure Flow

コントロールブロック

Field フォーマット  
コールタイプ B F/U
予約(内部使用)   -/-
コマンドコード A F/U
File Number B F/U (1)
Response Code B F/A (1)
ISN B F/A
コマンドオプション 3(ACBX のみ) A F/U
アディション 2 A、B -/A
コマンドタイム B -/A
ユーザーエリア   F/U

バッファエリア

バッファ  
フォーマットバッファ –/–
レコードバッファ –/–
サーチバッファ –/–
バリューバッファ –/–
ISN バッファ –/–
フォーマット:
A 英数字
B 2 進数
x/y Adabasコール前/後 - xとyは、値を取ることができます。
A Adabas によって設定
F ユーザーによって設定
U Adabas コール後も変更なし
- 使用しません

(1)このフィールドの意味は、Call タイプに指定された値によって異なります。詳細については、「Adabas の呼び出し」の「コントロールブロック」を参照してください。

コントロールブロック

コマンドコード

RI

File Number

解放したいレコードをもつファイル番号。

Response Code

このフィールドには、コマンドに対するレスポンスコードが返されます。レスポンスコード 0 は、このコマンドが正しく実行されたことを示します。指定したレコードが現ユーザーに対してホールド状態でない場合も、レスポンスコード 0 が返されます。指定したレコードが別のユーザーに対してホールド状態である場合は、ホールドされたレコードが解放されず、レスポンスコード 0 が返されます。

ISN

解放するレコードの ISN。

ユーザーがホールドした全レコードを解放したい場合は、このフィールドにバイナリ 0 をセットします。

コマンドオプション 3(ACBX のみ)

このフィールドを空白にすると、レコードはホールド状態から完全に解放されます。このフィールドを「S」にすると、ロックモードが排他から共有へとダウングレードされます。

ファイル 2 の ISN 3 のレコードをホールド状態から解放します。

コントロールブロック

Command Code          RI
File Number           2 (record to be released is in file 2)
ISN                   3 (record with ISN 3 is to be released)