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

C5 コマンド:プロテクションログへのユーザーデータの書き込み

C5 コマンドは、SIBA/PLOG にユーザーデータを書き込みます。 ただし、Event Replicator for Adabas をインストールした場合は、C5 コマンドを使用して、メッセージを元のアプリケーションから 1 つ以上の Event Replicator サーバーに宛てて送信することもできます。 この Event Replicator for Adabas 機能の詳細については、Event Replicator for Adabas のドキュメントを参照してください。

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


機能および使用

C5 コマンドは、Adabas データプロテクションログにユーザーデータを書き込むのに使用します。 このデータは、ADASEL ユーティリティを使用して読み込んだり、表示したりできます。 書き込まれたデータは、Adabas リカバリ処理には影響を及ぼしません。 ADASAV ユーティリティおよび ADARES ユーティリティは、C5 コマンドでデータプロテクションログに書き込んだデータをすべて無視します。

Top of page

ACB インターフェイスダイレクトコール:C5 コマンド

このセクションでは、C5 コマンドの ACB インターフェイスダイレクトコールについて説明します。 本書には、次のトピックが含まれています。

コントロールブロックとバッファの概要

コントロールブロック

ダイレクトコールが開始される前に、未使用の ACB フィールドにバイナリの 0 を設定することをお勧めします。

フィールド 位置 フォーマット Adabas コール前 Adabas コール後
  1~2 -- -- --
コマンドコード 3~4 英数字 F U
  5~8 -- -- --
ファイル番号 ** 9~10 バイナリ F U
レスポンスコード 11~12 バイナリ -- A
  13~26 -- -- --
レコードバッファ長 27~28 バイナリ F U
  29~34 -- -- --
コマンドオプション 1*** 35 英数字 F U
  36 -- -- --
アディション 1*** 37~44 英数字 F U
  45~72 -- -- --
コマンドタイム 73~76 バイナリ -- A
ユーザーエリア 77~80 -- -- U

バッファエリア

バッファ Adabas コール前 Adabas コール後
フォーマット *  
レコード F U

上記の意味は次に示すとおりです。

F Adabas コール前にユーザーが入力するフィールド
A Adabas により入力されるフィールド
U Adabas コール後も変化なし
* 使用しませんが、コールステートメントのパラメータリストに含める必要があります。
** データベース ID は、複数のデータベースにアクセスして、特定のデータベースに対してコマンド処理を制限する必要がある場合にのみ必要になります。

ただし、Event Replicator for Adabas を使用しておりコマンドオプション 1 を "R" にセットしている場合は、ファイル番号を指定して C5 コマンドを適用するファイルを特定する必要があります。 詳細については、Event Replicator for Adabas のドキュメントを参照してください。

*** Event Replicator for Adabas を使用している場合にのみ使用されます。 詳細については、Event Replicator for Adabas のドキュメントを参照してください。
-- 未使用

コントロールブロックフィールドの説明

ダイレクトコールが開始される前に、未使用の ACB フィールドにバイナリの 0 を設定することをお勧めします。

コマンドコード(ACBCMD)

C5

ファイル番号(ACBFNR)

データベース ID は、複数のデータベースにアクセスして、特定のデータベースに対してコマンド処理を制限する必要がある場合にのみ必要になります。

ただし、Event Replicator for Adabas を使用しておりコマンドオプション 1 を "R" にセットしている場合は、ファイル番号を指定して C5 コマンドを適用するファイルを特定する必要があります。 詳細については、Event Replicator for Adabas のドキュメントを参照してください。

レスポンスコード(ACBRSP)

Adabas はこのフィールドに、コマンドのレスポンスコードを返します。 レスポンスコード 0 は、このコマンドが正しく実行されたことを示します。 C5 コマンドによってゼロ以外のレスポンスコードが返された場合、Adabas コントロールブロックのバイト 45~48(アディション 2 フィールドの下位 2 バイト)に、レスポンスコードの意味を正確に定義したサブコードが含まれていることがあります。 レスポンスコードとサブコードについては、『Adabas メッセージおよびコード』を参照してください。

レコードバッファ長(ACBRBL)

このフィールドに指定したバイト数が、Adabas データプロテクションログに書き込まれます。

指定可能な最大長は 2048 バイトです。

コマンドオプション 1(ACBCOP1)

Event Replicator for Adabas を使用している場合にのみ使用されます。 それ以外の場合、このフィールドは空白にしなければなりません。 詳細については、Event Replicator for Adabas のドキュメントを参照してください。

アディション 1(ACBADD1)

Event Replicator for Adabas を使用している場合にのみ使用されます。 詳細については、Event Replicator for Adabas のドキュメントを参照してください。

ACB の例

Adabas データプロテクションログに、情報 ULRR0422 UPDATES FOR JANUARY を書き込みます。

コントロールブロック

コマンドコード C5
レコードバッファ長 28

バッファエリア

レコードバッファ ULRR0422 UPDATES FOR JANUARY

Top of page

ACBX インターフェイスダイレクトコール:C5 コマンド

このセクションでは、C5 コマンドの ACBX インターフェイスダイレクトコールについて説明します。 本書には、次のトピックが含まれています。

コントロールブロックとバッファの概要

コントロールブロック

ダイレクトコールが開始される前に、未使用の ACBX フィールドにバイナリの 0 を設定することをお勧めします。

フィールド 位置 フォーマット Adabas コール前 Adabas コール後
  1~2 --- --- ---
バージョンインジケータ 3~4 バイナリ F U
  5~6 --- --- ---
コマンドコード 7~8 英数字 F U
  9~10 --- --- ---
レスポンスコード 11~12 バイナリ --- A
  13~16 --- --- ---
データベース ID** 17~20 数値 F U
ファイル番号 *** 21~24 数値 F U
  25~48 --- --- ---
コマンドオプション 1*** 49 英数字 F U
  50~56 --- --- ---
アディション 1*** 57~64 英数字/バイナリ F U
  65~114 --- --- ---
エラーサブコード 115~116 バイナリ --- A
  117~144 --- --- ---
コマンドタイム 145~152 バイナリ --- A
ユーザーエリア 153~168 該当なし --- U
--- 169~193 操作不可 --- ---

ABD とバッファ

ABD とバッファ Adabas コール前 Adabas コール後
フォーマット *  
レコード F U

上記の意味は次に示すとおりです。

F Adabas コール前にユーザーが入力するフィールド
A Adabas により入力されるフィールド
U Adabas コール後も変化なし
* 使用しませんが、Adabas コールに含める必要があります。含めない場合は、Adabas コールが自動的に生成されます。
** データベース ID は、複数のデータベースにアクセスして、特定のデータベースに対してコマンド処理を制限する必要がある場合にのみ必要になります。

ただし、Event Replicator for Adabas を使用しておりコマンドオプション 1 を "R" にセットしている場合は、ファイル番号を指定して C5 コマンドを適用するファイルを特定する必要があります。 詳細については、Event Replicator for Adabas のドキュメントを参照してください。

*** Event Replicator for Adabas を使用している場合にのみ使用されます。 詳細については、Event Replicator for Adabas のドキュメントを参照してください。
--- 未使用

コントロールブロックフィールドの説明

ダイレクトコールが開始される前に、未使用の ACBX フィールドにバイナリの 0 を設定することをお勧めします。

バージョンインジケータ(ACBXVER)

F2

コマンドコード(ACBXCMD)

C5

レスポンスコード(ACBXRSP)

Adabas はこのフィールドに、コマンドのレスポンスコードを返します。 レスポンスコード 0 は、このコマンドが正しく実行されたことを示します。 ゼロ以外のレスポンスコードは、エラーサブコード(ACBXERRC)フィールドにサブコードを伴う場合があります。詳細は、Adabas メッセージおよびコード のドキュメントを参照してください。

データベース ID(ACBXDBID)

このフィールドは、複数のデータベースにアクセスして、特定のデータベースに対するコマンド処理を制限する必要がある場合にのみデータベース ID を指定します。 Adabas コールはこのデータベースに送られます。

このフィールドは 4 バイトのバイナリフィールドですが、現時点では 2 バイトのデータベース ID のみがサポートされています。 したがって、データベース ID はフィールドの下位部分(右端のバイト)に指定し、その前にバイナリの 0 を付加する必要があります。

このフィールドがバイナリの 0 に設定されている場合は、Adabas API は DDCARD 入力データで指定された ADARUN カードのデータベース ID か、リンクされているかリンクルーチンによりロードされた LNKGBLS モジュールで指定されているデフォルトのデータベース ID 値のいずれかを使用します。

ファイル番号(ACBXFNR)

Event Replicator for Adabas を使用中であり、かつコマンドオプション 2 フィールドを "R" に設定した場合、このフィールドは C5 コマンドの処理対象となるファイルの番号を指定するのに使用します。 詳細については、Event Replicator for Adabas のドキュメントを参照してください。

このフィールドは 4 バイトのバイナリフィールドですが、ファイル番号はフィールドの下位部分(右端のバイト)に指定し、その前にバイナリの 0 を付加する必要があります。

コマンドオプション 1(ACBXCOP1)

Event Replicator for Adabas を使用している場合にのみ使用されます。 それ以外の場合、このフィールドは空白にしなければなりません。 詳細については、Event Replicator for Adabas のドキュメントを参照してください。

アディション 1(ACBXADD1)

Event Replicator for Adabas を使用している場合にのみ使用されます。 詳細については、Event Replicator for Adabas のドキュメントを参照してください。

エラーサブコード(ACBXERRC)

コマンドがゼロ以外のレスポンスコードを返したときは、このフィールドにレスポンスコードの正確な意味を定義したサブコードが含まれます。 レスポンスコードとサブコードについては、『Adabas メッセージおよびコード』を参照してください。

Top of page

バッファ

C5 コマンドには、次のバッファが適用されます。

フォーマットバッファ

フォーマットバッファは C5 コマンドでは使用されませんが、Adabas コールに含める必要があります。 これが ACB インターフェイスダイレクトコールであり、フォーマットバッファが指定されていない場合は、処理エラーが発生します。ACB インターフェイスダイレクトコールはセットシーケンスにバッファが指定されていることを要求します。 これが ACBX インターフェイスダイレクトコールであり、フォーマットバッファが指定されていない場合は、バッファが自動的に生成されます。

レコードバッファ

このバッファには、データプロテクションログに書き込む情報が入ります。

書き込んだ情報を後で ADASEL ユーティリティで選択するには、元々レコードバッファに含まれていた文字列の冒頭部分(1~30 文字)を指定します。 このため、レコードバッファの冒頭部分にはユーザーデータをユニークに識別できる文字を指定することをお勧めします。 これにより、ユーザーデータを正しく識別し、選択できます。

Top of page