FastExportは従来型パラメータ レジスターを使用して2つの32ビット アドレスからなるパラメータ リストを指すことにより、INMODルーチンと情報を交換します。
最初の32ビット アドレスは、ステータス コード、長さ、本体の3つの値からなるINMODインターフェースのパラメータ リストを指します。FastExport/INMODインターフェースの2番目の32ビット アドレスは、連番とパラメータ リストの各フィールドが含まれているデータ構造を指します。
以下の各節では、両方のアドレス ポインタのセットについて説明します。
ステータス コード
ステータス コード ポインタは、双方向に情報を伝達する32ビット符号付き2進値です。次の表 で、FastExport - INMOD間インターフェースの8つのステータス コード値について説明します。
値 | 説明 |
---|---|
0 | FastExportを呼び出すのは今回が最初であり、INMODルーチンがレコードを戻すことを期待します。この時点で、INMODルーチンは、データ レコードをFastExportに送信する前にその初期設定タスクを実行する必要があります。 |
1 | FastExportを呼び出すのは今回が最初ではなく、INMODルーチンがレコードを戻すことを期待します。 |
2 | クライアント システムがすでに再始動しており、INMODルーチンは最後のチェックポイントのところに再び置かれます。FastExportはINMODルーチンがレコードを戻すことを予期していません。 これは一度だけの呼び出しであり、FastExportが、ステータス コード値ゼロ(0)を指定した状態で後続の呼び出しを発行することはありません。 最初のチェックポイントの前にクライアント システムが再始動すると、ジョブの再初期設定をするためにエントリ コード1が送信されます。
|
3 | チェックポイントはすでに書き込まれており、INMODルーチンはチェックポイントの位置を保存します。FastLoadはINMODルーチンがレコードを戻すことを予期していません。 |
4 | データベース が失敗しており、INMODルーチンは最後のチェックポイントのところに再び置かれます。 FastLoadはINMODルーチンがレコードを戻すことを予期していません。 これは一度だけの呼び出しであり、FastExportが、ステータス コード値ゼロ(0)を指定した状態で後続の呼び出しを発行することはありません。 最初のチェックポイントの前にデータベースが再始動すると、クリーンアップのためにエントリ コード2が送信され、ジョブの再初期設定のためにエントリ コード1が送信されます。 |
5 | FastExportジョブがすでに終了しており、INMODルーチンは必要とされるクリーンアップ タスクがあれば実行します。 この条件は、ワークステーション接続クライアント システムにのみ適用されます。
|
6 | INMODルーチンは初期設定の後、FastExportからレコードを受け取る準備をします。 |
7 | INMODルーチンはFastExportからレコードを受け取ります。 |
次の表には、INMOD-FastExport間インターフェースのステータス コードの値(2)が示されています。
ステータス コード | 表示内容 |
---|---|
0 | INMODルーチンの以下の状態を示しています。
|
ゼロ以外の値 | INMODルーチンが以下の状況に遭遇したことを示しています。
|
長さ
長さは、データ レコードの長さ(単位: バイト数)を指定する32ビット符号付き2進値です。最大レコード長は、62Kつまり63,488バイトです。
INMODルーチンでは、Length値に0を使用してファイルの終わりに達したことを示すことができます。
本体
本体は、INMODルーチンがデータ レコードを入れる領域です。
順序番号
順序番号フィールドには、ソースの順序番号の整数レコード カウンター部分である4バイト整数が入ります。
パラメータ リスト
- VARCHARの指定
- 2バイトからなる長さ指定、m
- mバイトからなるparms列です。これはFastExportが構文解析して表示します。