Saturday, January 12, 2013

Parallel Convoy in BizTalk example


What is Parallel convoy ?


Parallel convoy in BizTalk is used to receive messages in any order. The Orchestration process does not start its execution further until all the messages in parallel convoys are received. In Parallel convoy we have a parallel shape as the first shape in the Orchestration and multiple receive shapes for receiving multiple messages.
                        For example if there is a Online shopping portal which sends several messages to BizTalk like ShoppingDetails, CustomerDetails, BillingAddress and they all need to be received in BizTalk and then only process should continue further and these messages can be receied in any order into BizTalk. This situation can be implemented using Parallel convoy :



SourceSchema for ShoppingDetails message:















SourceSchema1 for BillingAddress messages:


















SourceSchema2 for CustomerDetails message:



















NOTE : CustID is promoted in all the three schema's. Here is Property schema for CustID :



PropertSchema for CustID:


















DestinationSchema :




















Orchestration :

















In Orchestration we have a Parallel shape with three receive branches and three receive ports for receiving three different types of messages. Now for parallel convoy we have to create Correlation set and correlation type which is done on CustID. All three receive shapes initialize the correlation set because any message can arrive at an time. Suppose 2nd parallel branch's message arrives then the 2nd receive shape initializes the correlation set and the other two follows the correlation set. When all the three messages arrives then only further execution of the Orchestration takes place.



8 comments:

  1. Hi Rahul,

    As new to biztalk its given me alot of clarification.Please send me the code to my mail id sathish.gdk34@gmail.com.

    Thanks advance

    Regards,
    Sathish

    ]

    ReplyDelete
  2. Good explaination, keep posting like this posts ........ this will more helpful to beginners and please send like this to my mail sushma.reddy532@gmail.com

    ReplyDelete
    Replies
    1. Thanks Sushma..unfortunately I can not send the code...
      But if u need any help regarding Biztalk contact me at rahul.madanin@gmail.com

      Thanks,
      Rahul Madaan

      Delete
  3. hi
    rahul
    i have lot dout
    what i will write in expression shape .
    litille bit confution on correlation as well
    if it is posible
    pls send me code and discription

    ReplyDelete
    Replies
    1. Hi Ashish,
      I will not be able to send the code....but yeah I can publish a nice article on Correlation. You first need to learn Correlation then Convoys as convoys are special cases of correlation.

      Thanks,
      Rahul Madaan

      Delete
    2. how can we achieve parallel convoy without using parallel action shape?

      Delete
  4. Rahul..
    I have two questions here. I am bit new Biztalk. But have loads enthu to learn it.
    So, please help me with my questions.
    1. How do you relate the field CustID in property schema with all the other document schemas in your example.
    2. What did you write in expression shapes?

    Looking forward to your response.

    Thanks
    Mahendra

    ReplyDelete