RC コマンドは、このユーザーの 1 つ以上のコマンド ID または 1 つのグローバルフォーマット ID を解放します。
このドキュメントでは、次のトピックについて説明します。
RC コマンドを使用すると、現在ユーザーに割り当てられている 1 つ以上のコマンド ID を解放したり、1 つまたはすべてのグローバルフォーマット ID を削除したりできます。
内部フォーマットバッファプールのコマンド ID。 関連する内部フォーマットも解放されます。
ISN リスト(TBI)のコマンド ID。
シーケンシャルコマンドテーブル(TBLES/TBQ)のコマンド ID。
内部フォーマットバッファプールか、TBI、TBLES、TBQ のどちらか、または両方に指定したコマンド ID 値に等しいか、それ以上のコマンド ID。
ユーザーグループの特別なグローバルフォーマット ID。
既存のすべてのグローバルフォーマット ID。
選択オプションを指定しないと、入力したコマンド ID が上記のすべての領域から解放されます。 コマンド ID を解放すると、関連する TBI および(または)TBLES/TBQ エントリも削除されます。ただし、内部フォーマットバッファプールエントリは必ずしも解放されません。
RC コマンドは、次のいずれかの場合に使用します。
SAVE ISN LIST オプション付きの Sx コマンドを実行して、Adabas ワークに格納されている ISN リストの処理をユーザーが完了した場合。 RC コマンドの発行により、Adabas は現在そのリストが占めていたスペースを再使用できます。
エンドオブファイル条件に達する前に、ファイルの順次読み込み(L2/L5、L3/L6、L9)コマンドをユーザーが終了する場合。
空白以外のコマンド ID を使用した一連の L1/L4、A1、N1/N2 コマンドをユーザーが完了した場合。
このセクションでは、RC コマンドの ACB インターフェイスダイレクトコールについて説明します。 本書には、次のトピックが含まれています。
ダイレクトコールが開始される前に、未使用の ACB フィールドにバイナリの 0 を設定することをお勧めします。
フィールド | 位置 | フォーマット | Adabas コール前 | Adabas コール後 |
---|---|---|---|---|
1~2 | -- | -- | -- | |
コマンドコード | 3~4 | 英数字 | F | U |
コマンド ID | 5~8 | 英数字 | F | U |
ファイル番号 | 9~10 | バイナリ | F | U |
レスポンスコード | 11~12 | バイナリ | -- | A |
13~34 | -- | -- | -- | |
コマンドオプション 1 | 35 | 英数字 | F | U |
コマンドオプション 2 | 36 | 英数字 | F | U |
アディション 1 | 37~44 | 英数字 | F | U |
45~64 | -- | -- | -- | |
アディション 5 | 65~72 | 英数字 | F | U |
コマンドタイム | 73~76 | バイナリ | -- | A |
ユーザーエリア | 77~80 | -- | -- | U |
何も使用されていません。
上記の意味は次に示すとおりです。
F | Adabas コール前にユーザーが入力するフィールド |
A | Adabas により入力されるフィールド |
U | Adabas コール後も変化なし |
-- | 未使用 |
ダイレクトコールが開始される前に、未使用の ACB フィールドにバイナリの 0 を設定することをお勧めします。
RC
このフィールドには、解放または参照するコマンド ID を指定します。 空白またはバイナリのゼロを指定すると、ユーザーに現在割り当てられている全コマンド ID が解放されます。
コマンドオプション 1 フィールドを D、E、または O に指定する場合は、解放するフォーマットまたはグローバルフォーマット ID と関連するファイルの番号を 2 進数で指定しなければなりません。
物理ダイレクトコールの場合は、次のようファイル番号を指定します。
1 バイトファイル番号の場合は、ファイル番号を第 2 バイト(10)に入力します。第 1 バイト(9)は、バイナリの 0(B'0000 0000')をセットします。
2 バイトファイル番号の場合は、2 バイト(9 と 10)を使います。
注意:
2 バイトファイル番号およびデータベース ID を使用する場合は、コントロールブロックの先頭バイトに X'30'
を入力しなければなりません。
Adabas はこのフィールドに、コマンドのレスポンスコードを返します。 レスポンスコード 0 は、このコマンドが正しく実行されたことを示します。 ゼロ以外のレスポンスコードは、アディション 2 フィールドの下位 2 バイトにサブコードを伴う場合があります。詳細は『Adabas メッセージおよびコード』を参照してください。
これらのフィールドは、内部フォーマットバッファプール、ISN リストテーブル(TBI)、またはシーケンシャルコマンドのテーブル(TBLES/TBQ)から解放されるコマンド ID、フォーマット ID、またはグローバルフォーマット ID を示します。 テーブルの詳細については、「プログラミング全般に関する考慮事項」を参照してください。
コマンドオプション 1 および 2 の両フィールドに空白かバイナリのゼロを設定した場合、コマンド ID フィールドに指定されたコマンド ID は、すべてのテーブルから解放されます。
いずれかのコマンドオプションフィールドに次の値を設定した場合には、コマンド ID、フォーマット ID、またはグローバルフォーマット ID に関連付けられているリソースが解放されます。解放される対象は次の表のとおりです。
オプション | 解放される対象 |
---|---|
C | すべての既存グローバルフォーマット |
D | 指定したファイル番号およびディスクリプタ名に該当するすべてのフォーマット |
E | 指定したファイル番号およびディスクリプタ名に該当するすべてのグローバルフォーマット |
F | 指定したコマンド ID に関連付けられているフォーマット |
G | 指定したコマンド ID 以上のコマンド ID に関連付けられているすべての既存フォーマット |
I | 指定したコマンド ID に関連付けられている ISN リスト(TBI) |
L | アディション 5 フィールドに格納されているグローバルフォーマット ID。 |
O | 指定したファイル番号のアディション 5 フィールドに格納されているグローバルフォーマット ID。 |
S | 指定したコマンド ID に関連付けられているシーケンシャルコマンド(TBLES/TBQ) |
X | 指定したコマンド ID 以上のコマンド ID に関連付けられているすべての ISN リスト(TBI)およびシーケンシャルコマンド(TBLES/TBQ)。 内部フォーマットは解放されません。 |
Smith/Jones の問題が発生する可能性がある環境で正しいデータが返されるように L3 または L6 コマンドでフォーマットを作成した場合に、オプション D と E を使用します。 この場合に基礎となるフォーマット ID は、サイズが 12 バイトになり、8 バイトのフォーマット ID、2 バイトのファイル番号、2 バイトのディスクリプタ名から構成されます。
コマンドオプション D または E が指定される場合、アディション 1 フィールドの最初の 2 バイトには、解放するフォーマットまたはグローバルフォーマット ID に関連する英数字のディスクリプタフィールド名を含んでいる必要があります。 残りのすべての位置には空白を設定しなければなりません。
解放するフォーマットが L3 または L6 コマンドで作成されていない場合、このフィールドは使用されません。
解放するグローバルフォーマット ID を指定します。
コマンド ID 0003 を解放します。
コマンドコード | RC | |
---|---|---|
コマンド ID | X'0003' | コマンド ID 003 を解放します。 |
コマンドオプション 1/2 | bb(空白) | 全コマンド ID タイプを解放します |
現在ユーザーに割り当てられている全コマンド ID を解放します。
コマンドコード | RC | |
---|---|---|
コマンド ID | X'00000000' | バイナリのゼロは全コマンド ID を解放することを示します |
コマンドオプション 1/2 | bb(空白) | 全コマンド ID タイプを解放します |
シーケンシャルコマンドテーブルまたは内部フォーマットバッファプールにあって、ユーザーに割り当てられているコマンド ID をすべて解放します。
コマンドコード | RC | |
---|---|---|
コマンド ID | X'00000000' | バイナリのゼロは全コマンド ID を解放することを示します |
コマンドオプション 1 | F | F は、内部フォーマットバッファプールにあるコマンド ID を解放することを示します。 |
コマンドオプション 2 | S | S は、シーケンシャルコマンドテーブルにあるコマンド ID を解放することを示します。 |
複数のファイルに同じグローバルフォーマット ID を定義している場合、 全ファイルのグローバルフォーマット ID を解放します。
コマンドコード | RC | |
---|---|---|
コマンドオプション 1/2 | L | アディション 5 フィールドで指定したグローバルフォーマット ID のフォーマットを解放します。 |
アディション 5 | C'TGLOB001' | この番号の第 1 バイトの上位(左端)2 ビットに B'11' が設定されている場合、全 8 バイトがグローバルフォーマット ID であることを示します。 |
複数のファイルに同じグローバルフォーマット ID を定義している場合、 ファイル 3 のグローバルフォーマット ID を解放します。
コマンドコード | RC | |
---|---|---|
ファイル番号 | 03 | グローバルフォーマット ID を解放するファイルの番号を 2 進数で指定します。 |
コマンドオプション 1/2 | O | ファイル番号フィールドで指定したファイルに関して、アディション 5 フィールドで指定したグローバルフォーマット ID のフォーマットを解放します。 |
アディション 5 | C'TGLOB001' | この番号の第 1 バイトの上位(左端)2 ビットに B'11' が設定されている場合、全 8 バイトがグローバルフォーマット ID であることを示します。 |
このセクションでは、RC コマンドの ACBX インターフェイスダイレクトコールについて説明します。 本書には、次のトピックが含まれています。
ダイレクトコールが開始される前に、未使用の ACBX フィールドにバイナリの 0 を設定することをお勧めします。
フィールド | 位置 | フォーマット | Adabas コール前 | Adabas コール後 |
---|---|---|---|---|
1~2 | --- | --- | --- | |
バージョンインジケータ | 3~4 | バイナリ | F | U |
5~6 | --- | --- | --- | |
コマンドコード | 7~8 | 英数字 | F | U |
9~10 | --- | --- | --- | |
レスポンスコード | 11~12 | バイナリ | --- | A |
コマンド ID | 13~16 | 英数字/バイナリ | F | U |
データベース ID | 17~20 | 数値 | F | U |
ファイル番号 | 21~24 | 数値 | F | U |
25~48 | --- | --- | --- | |
コマンドオプション 1 | 49 | 英数字 | F | U |
コマンドオプション 2 | 50 | 英数字 | F | U |
51~56 | --- | --- | --- | |
アディション 1 | 57~64 | 英数字/バイナリ | F | U |
65~84 | --- | --- | ||
アディション 5 | 85~92 | 英数字/バイナリ | F | U |
93~114 | --- | --- | --- | |
エラーサブコード | 115~116 | バイナリ | --- | A |
117~144 | --- | --- | --- | |
コマンドタイム | 145~152 | バイナリ | --- | A |
ユーザーエリア | 153~168 | 該当なし | --- | U |
--- | 169~193 | 操作不可 | --- | --- |
何も使用されていません。
上記の意味は次に示すとおりです。
F | Adabas コール前にユーザーが入力するフィールド |
A | Adabas により入力されるフィールド |
U | Adabas コール後も変化なし |
-- | 未使用 |
ダイレクトコールが開始される前に、未使用の ACBX フィールドにバイナリの 0 を設定することをお勧めします。
F2
RC
Adabas はこのフィールドに、コマンドのレスポンスコードを返します。 レスポンスコード 0 は、このコマンドが正しく実行されたことを示します。 ゼロ以外のレスポンスコードは、エラーサブコード(ACBXERRC)フィールドにサブコードを伴う場合があります。詳細は、Adabas メッセージおよびコード のドキュメントを参照してください。
このフィールドには、解放または参照するコマンド ID を指定します。 空白またはバイナリのゼロを指定すると、ユーザーに現在割り当てられている全コマンド ID が解放されます。
このフィールドを使用して、データベース ID を指定します。 Adabas コールはこのデータベースに送られます。
このフィールドは 4 バイトのバイナリフィールドですが、現時点では 2 バイトのデータベース ID のみがサポートされています。 したがって、データベース ID はフィールドの下位部分(右端のバイト)に指定し、その前にバイナリの 0 を付加する必要があります。
このフィールドがバイナリの 0 に設定されている場合は、Adabas API は DDCARD 入力データで指定された ADARUN カードのデータベース ID か、リンクされているかリンクルーチンによりロードされた LNKGBLS モジュールで指定されているデフォルトのデータベース ID 値のいずれかを使用します。
コマンドオプション 1 フィールドを D、E、または O に指定する場合は、このフィールドを使用して、解放するフォーマットまたはグローバルフォーマット ID に関連付けられたファイルの番号を指定する必要があります。
このフィールドは 4 バイトのバイナリフィールドですが、ファイル番号はフィールドの下位部分(右端のバイト)に指定し、その前にバイナリの 0 を付加する必要があります。
これらのフィールドは、内部フォーマットバッファプール、ISN リストテーブル(TBI)、またはシーケンシャルコマンドのテーブル(TBLES/TBQ)から解放されるコマンド ID、フォーマット ID、またはグローバルフォーマット ID を示します。 テーブルの詳細については、「プログラミング全般に関する考慮事項」を参照してください。
コマンドオプション 1 および 2 の両フィールドに空白かバイナリのゼロを設定した場合、コマンド ID フィールドに指定されたコマンド ID は、すべてのテーブルから解放されます。
いずれかのコマンドオプションフィールドに次の値を設定した場合には、コマンド ID、フォーマット ID、またはグローバルフォーマット ID に関連付けられているリソースが解放されます。解放される対象は次の表のとおりです。
オプション | 解放される対象 |
---|---|
C | すべての既存グローバルフォーマット |
D | 指定したファイル番号およびディスクリプタ名に該当するすべてのフォーマット |
E | 指定したファイル番号およびディスクリプタ名に該当するすべてのグローバルフォーマット |
F | 指定したコマンド ID に関連付けられているフォーマット |
G | 指定したコマンド ID 以上のコマンド ID に関連付けられているすべての既存フォーマット |
I | 指定したコマンド ID に関連付けられている ISN リスト(TBI) |
L | アディション 5 フィールドに格納されているグローバルフォーマット ID。 |
O | 指定したファイル番号のアディション 5 フィールドに格納されているグローバルフォーマット ID。 |
S | 指定したコマンド ID に関連付けられているシーケンシャルコマンド(TBLES/TBQ) |
X | 指定したコマンド ID 以上のコマンド ID に関連付けられているすべての ISN リスト(TBI)およびシーケンシャルコマンド(TBLES/TBQ)。 内部フォーマットは解放されません。 |
Smith/Jones の問題が発生する可能性がある環境で正しいデータが返されるように L3 または L6 コマンドでフォーマットを作成した場合に、オプション D と E を使用します。 この場合に基礎となるフォーマット ID は、サイズが 12 バイトになり、8 バイトのフォーマット ID、2 バイトのファイル番号、2 バイトのディスクリプタ名から構成されます。
コマンドオプション D または E が指定される場合、アディション 1 フィールドの最初の 2 バイトには、解放するフォーマットまたはグローバルフォーマット ID に関連する英数字のディスクリプタフィールド名を含んでいる必要があります。 残りのすべての位置には空白を設定しなければなりません。
解放するフォーマットが L3 または L6 コマンドで作成されていない場合、このフィールドは使用されません。
解放するグローバルフォーマット ID を指定します。
コマンドがゼロ以外のレスポンスコードを返したときは、このフィールドにレスポンスコードの正確な意味を定義したサブコードが含まれます。 レスポンスコードとサブコードについては、『Adabas メッセージおよびコード』を参照してください。