リモートで発行される SYNCPT 動詞
リモートで発行される SYNCPT 動詞。
リモート トランザクション プログラムからデータを受信するために、ローカル TP によって、RECEIVE_AND_WAIT または MC_RECEIVE_AND_WAIT 動詞が発行されます (使用される会話が基本であるかマップであるかによって決まります)。 ベンダー API によって、動詞が Host Integration Server に透過的に渡されます。
RECEIVE_AND_WAIT または MC_RECEIVE_AND_WAIT 動詞が、what_rcvd = AP_PS_HEADER で完了します。 データ バッファーには、PREPARE PS ヘッダーが含まれます。
リモート TP からの送信を示す通知を受信するために、ベンダー API によって別の RECEIVE_AND_WAIT または MC_RECEIVE_AND_WAIT 動詞が発行されます。
ベンダー API によって、トランザクション プログラムの RECEIVE_AND_WAIT または MC_RECEIVE_AND_WAIT 動詞が、VCB の what_rcvd フィールドが TAKE_SYNCPT に設定されて返されます。
トランザクション プログラムによって、SYNCPT 動詞が発行されます。
ベンダー API によって、REQUEST_COMMIT PS ヘッダーが生成され、SEND_DATA または MC_SEND_DATA 動詞を使用して送信されます。 会話がマップされる場合、MC_SEND_DATA 動詞が、VCB の data_type フィールドが AP_PS_HEADER に設定されて発行されます。
次に、ベンダー API によって、送信するリモート TP 方向を指示するために、RECEIVE_AND_WAIT または MC_RECEIVE_AND_WAIT 動詞が発行されます。
RECEIVE_AND_WAIT または MC_RECEIVE_AND_WAIT 動詞が、VCB の what_rcvd フィールドが AP_PS_HEADER に設定されて完了します。 データ バッファーには、COMMITTED PS ヘッダーが含まれます。
送信許可を得るために、別の RECEIVE_AND_WAIT または MC_RECEIVE_AND_WAIT 動詞が発行されます。
FORGET PS ヘッダーが準備され、リモート トランザクション プログラムに送信されます。
FORGET がフラッシュされ、PREPARE_TO_RECEIVE または MC_PREPARE_TO_RECEIVE の発行によってリモート トランザクション プログラムに与えられる方向が VCB の ptr_type フィールドによって AP_FLUSH に設定されます。
PREPARE_TO_RECEIVEまたはMC_PREPARE_TO_RECEIVE が完了したら、ベンダー API によって、SYNCPT 動詞がローカル トランザクション プログラムに返されます。