このドキュメントでは、次のトピックについて説明します。
HI オプションは、レコードをホールド状態にするために使用します。つまり、他のユーザーに対しレコードをロックします。詳細については、「概念および機能」の「競合更新、共有ロックおよび階層ロック」を参照してください。このコマンドを使用して、レコードのロックモードを共有から排他にアップグレードすることもできます。ユーザーがすでにレコードの排他的ロックをホールドしている場合、ロックモードは変更されません。
ロックが別のコマンドでアップグレードされるか、ET または BT コマンドで解放されるか、または RI コマンドで解放またはダウングレードされるまで、レコードは要求されたロックモードのままです。
ユーザーは、ホールドするレコードの ISN とそのファイル番号を指定します。
HI コマンドは、ホールド状態に置かれる ISN が存在するかどうかをチェックしません。
Adabas は、このコマンドが別のユーザーのロックによって妨げられていない場合にのみ、このコマンドを実行します。レコードが使用可能でない場合、ユーザーは待機状態になり、レコードが再び使用可能になると Adabas によって自動的に再アクティブ化されます。
RETURN オプション付 HI コマンドを発行し、かつホールドするレコードが現在利用できない場合、Adabas はユーザーを待機状態にするのではなく、レスポンスコード 145 を返します。
Field | フォーマット | |
---|---|---|
コールタイプ | B | F/U |
予約(内部使用) | -/- | |
コマンドコード | A | F/U |
File Number | B | F/U (1) |
Response Code | B | F/A (1) |
ISN | B | F/U |
コマンドオプション 1 | A | F/U |
コマンドオプション 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 の呼び出し」の「コントロールブロック」を参照してください。
- コマンドコード
HI
- File Number
ホールドするレコードを持つファイル番号。
- Response Code
このフィールドには、コマンドに対するレスポンスコードが返されます。レスポンスコード 0 は、このコマンドが正しく実行されたことを示します。
- ISN
ホールド状態にするレコードの ISN を示します。
- コマンドオプション 1
このフィールドに R を指定すると、RETURN オプションを使用することを示します。削除対象レコードが他のユーザーによってホールドされていると、そのレコードが使用可能になるまでユーザーは待ち状態にならずに、レスポンスコード 145 が返されます。
- コマンドオプション 3(ACBX のみ)
レコードがまだ共有または排他的にロックされていない場合、このフィールドの「S」はレコードを共有ホールド状態にします。レコードは、ロックが排他的ロックにアップグレードされるか、ET、BT、または RI コマンドでロックが再度解除されるまで、共有ホールド状態のままになります。
このフィールドに空白またはバイナリの 0 があると、レコードは排他的ホールド状態になります。
- アディション 2
このフィールドには、一部のレスポンスコードについて詳細情報が返されます。詳細については、『メッセージおよびコードマニュアル』 を参照してください。
ファイル 2 の ISN 3 のレコードを排他的ホールド状態にします。レコードが使用可能になるまで待機状態になります。
Command Code hi
File Number 2 (record to be held is in file 2)
ISN 3 (record with ISN 3 to be held)
Command Option 1 b (Return option not used)
Command Option 3 b (exclusive lock)
ファイル 2 の ISN 4 のレコードを共有ホールド状態にします。レコードが排他的にロックされているか、他のユーザーによる排他的ロックを待機している場合、Adabas はレスポンスコード 145 を返します。
Command Code hi
File Number 2 (record to be held is in file 2)
ISN 4 (record with ISN 4 to be held)
Command Option 1 R (Return option used)
Command Option 3 S