# 再配信処理の流れ

転送中に、なんらかの問題が発生して転送が中断された場合に、中断された転送を再度実行できます。中断された転送を、配信側ホストから再度実行するには、再配信要求プログラム（XRRSNDGO）を起動します。再配信要求プログラムを実行して再配信を要求することを、HULFTでは「再配信要求」と呼びます。

この処理は、配信側ホストの配信プログラムと集信側ホストの集信プログラムが起動済みであることを前提としています。

再配信処理では、ファイルは配信が中断された個所（チェックポイント）から転送されます。この転送を、HULFTでは「チェックポイント再配信」と呼びます。チェックポイント再配信を利用すると、配信ファイルのサイズが大きいなど、転送に時間がかかる場合に、ファイルを先頭から転送しなおすよりも時間の短縮になります。

チェックポイント再配信を行わない場合、配信ファイルの先頭から転送されます。チェックポイント再配信を行わない再配信要求は、転送が中断された後に配信ファイルを変更したなど、データを先頭から配信しなおしたい場合に行ってください。

チェックポイント再配信の処理の流れを図2.6 で説明します。

図2.6 チェックポイント再配信の処理

1) 再配信要求の実行

再配信要求プログラムを実行すると、配信プログラムに再配信要求が実行されます。

再配信を行う場合、配信管理情報に配信前ジョブが登録されている場合でも、配信前ジョブは実行されません。

2) 配信ワークファイルまたは配信ファイルの読み飛ばし

チェックポイント再配信の場合、配信プログラムは再配信待ちレコードの情報から配信済みレコード件数および配信済みデータサイズを判断し、配信ワークファイルまたは配信ファイルのすでに転送されているレコードを読み飛ばします。

= 備考 =

ワークファイル転送の場合、配信ワークファイルが読み飛ばされます。ダイレクト転送の場合、配信ファイルが読み飛ばされます。

3) 配信処理の実行

配信プログラムは、再配信待ちレコードの情報に従って、配信ワークファイルまたは配信ファイルのデータを相手ホストに転送します。

4) 配信履歴の書き込み

配信処理の終了後、配信プログラムは配信履歴を集配信履歴ファイルに書き込みます。

配信処理が異常終了した場合、配信プログラムは異常終了した転送の情報（再配信待ちレコード）を配信制御ファイルに書き込みます。このとき、再配信待ちレコードに個々の転送を識別するための通し番号（再配信処理番号）が付与されます。

= 備考 =

再配信待ちレコードに付与されていた再配信処理番号は再利用されません。異常終了ごとに新しい再配信処理番号が設定されます。

5) 配信後ジョブの起動

配信プログラムは、配信管理情報に登録された設定内容に従って配信後ジョブを起動します。配信管理情報には、配信処理が正常終了したときに起動する正常時ジョブと、異常終了したときに起動する異常時ジョブを、それぞれ登録できます。転送結果に応じて、どちらかのジョブが起動されます。

6) ジョブ実行履歴の書き込み

HULFTによって配信後ジョブに組み込まれたジョブ・ステップが、ジョブ実行履歴を集配信履歴ファイルに書き込みます。

= 備考 =

以下の方法で配信した場合、その配信と同一条件の再配信待ちレコードが配信制御ファイルから削除されます。

- 配信要求を実行して配信を行った場合

- 送信要求を受け付けて配信を行った場合

再配信待ちレコードが削除される条件は、システム動作環境設定の再配信待ちキューの削除条件（RESENDDEL）で設定します。