マージ機能を使用する場合は、入出力の形態により次の4つがあります。
入出力ともファイル(標準出力を含む)を使用する形態
入出力ともファイル(標準出力を含む)を使用する場合、以下の手順で行います。
bsrtopen関数を発行します。
bsrtclse関数を発行します。
参考
bsrtopen関数のパラメタで、入力ファイルパス名、および出力ファイルパス名(または標準出力)を指定した場合、この形態になります。
入出力ともユーザアプリケーション(bsrtmrge関数)を使用する形態
入出力ともユーザアプリケーション(bsrtmrge関数)を使用する場合は、以下の手順で行います。
bsrtopen関数を発行します。
bsrtmrge関数を発行します。
bsrtmrge関数はPowerSORTからレコードの終わりが通知されるまで連続して発行します。
この形態のbsrtmrge関数には、ユーザアプリケーションからPowerSORTにレコードを渡す働きとPowerSORTからレコードを受け取る働きの2つがあります。bsrtmrge関数の発行では、個々のストリング(ソート済のレコード群)のレコードを渡し、PowerSORTから返されるレコードを受け取ります。ストリングのレコードがなくなったときはレコードの終わりを通知し、PowerSORTから返されるレコードを受け取ります。処理しているすべてのストリングに対してレコードの終わりを通知したら、渡すレコードがなくてもPowerSORTからレコードの終わりが通知されるまで連続して発行して、PowerSORTから返されるレコードを受け取ります。
PowerSORTからレコードの終わりが通知されたら、最後にbsrtclse関数を発行します。
参考
bsrtopen関数のパラメタで、入力ファイルパス名、および出力ファイルパス名(または標準出力)を指定しなかった場合、この形態になります。
入力にファイルを使用し、出力にユーザアプリケーション(bsrtmrge関数)を使用する形態
入力にファイルを使用し、出力にユーザアプリケーション(bsrtmrge関数)を使用する場合は、以下の手順で行います。
bsrtopen関数を発行します。
bsrtmrge関数を発行します。
bsrtmrge関数はPowerSORTからレコードの終わりが通知されるまで連続して発行します。
この形態のbsrtmrge関数には、PowerSORTからレコードを受け取る働きがあります。
PowerSORTからレコードの終わりが通知されたら、最後にbsrtclse関数を発行します。
参考
bsrtopen関数のパラメタで、入力ファイルパス名を指定し、出力ファイルパス名(または標準出力)を指定しなかった場合、この形態になります。
入力にユーザアプリケーション(bsrtmrge関数)を使用し、出力にファイル(標準出力を含む)を使用する形態
入力にユーザアプリケーション(bsrtmrge関数)を使用し、出力にファイル(標準出力を含む)を使用する場合は、以下の手順で行います。
bsrtopen関数を発行します。
bsrtmrge関数を発行します。
bsrtmrge関数はPowerSORTからレコードの終わりが通知されるまで連続して発行します。
この形態のbsrtmrge関数には、ユーザアプリケーションからPowerSORTにレコードを渡す働きがあります。bsrtmrge関数の発行では、個々のストリングのレコードを渡し、ストリングのレコードがなくなったときはレコードの終わりを通知します。処理しているすべてのストリングに対してレコードの終わりを通知したら、渡すレコードがなくてもPowerSORTからレコードの終わりが通知されるまで連続して発行します。
PowerSORTからレコードの終わりが通知されたら、最後にbsrtclse関数を発行します。
参考
bsrtopen関数のパラメタで、入力ファイルパス名を指定しないで、出力ファイルパス名(または標準出力)を指定するとこの形態になります。