how do i correlate two different messages ?

I have an asynchronous interface and this is how it works:

The interface communicates with the client thru a vendor. The vendor sends a ack back to biztalk for successful and unsuccessful submissions. If the client has a problem with the document we sent, the vendor after an unspecified period (up to an hr) will send a message back to biztalk thru another receive port with an error message.

The asynchronous error message sent by the client and actual message that was submitted by biztalk can be related by their message id's. Can this be done in biztalk using a parallel convoy ? The error messages fills the message id on RelatesToMessageID and the original messages contains it at MessageID. If I set up correlation sets for both RelatesToMessageID and MessageID will biztalk make sure they contain same values at both these places ?





  • Edited by svemaraju Friday, March 27, 2015 8:09 PM
March 27th, 2015 8:07pm

Correlation: Yes.

Parallel Convoy: No, probably.

It sounds like you will only receive the Nack when there is a problem, and nothing when the submission is successful.  In that case, all you really need is a Correlated Receive Shape (on RelatesToMessageID) in a Listen Shape.  In the other branch of the Listen Shape, you would have a Delay shape for, say 90 min.

Free Windows Admin Tool Kit Click here and download it now
March 27th, 2015 10:02pm

This is a convoy alright but not a parallel one. You will have a two-way request-response where you will initialize the correlation set (MessageId) and receive the message-ack. Then you would go into a receive (one-way?) or otherwise which will follow the correlation.

To ensure proper values are promoted into the correlation set, you would need to create promoted properties and use XmlReceive pipelines. The pipelines would promote the values and BizTalk would match the correlation to ensure that the actual message ack/nak will find its way to the original orchestration instance.

Regards.

March 28th, 2015 10:38am

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics