Orchestration Logic in Multiple pages RRS feed

  • Question

  • I have a huge business logic, the flow to me is all in 1 Orchestration.

    Like how we have multiple pages for Maps, is there any similar way where I can break my Orchestration,
    and from there the same point the Orchestration can continue in next Orchestraion and so on...

    If I build the Business logic in 1 Orch, it will be humungus, may be just o scroll it may take or sure 5-10 mins or more...

    Please advise


    Thursday, August 22, 2019 8:56 PM

All replies

  • You can create another Orchestration that you Call from the parent Orchestration.   This is especially useful if you need the same logic in multiple branches in your parent Orchestration.

    However, most likely, if you have that much logic happening in your Orchestration, there may be issues with the overall design of what the solution is trying to achieve.    Complex Orchestrations means more failure points and are harder maintain or to debug when they do go wrong.   I live by the KISS principle,  Keep It Simple Stupid.  Does it really all need to be in one Orchestration, or can you break it up into independent Orchestrations?

    BizTalk is great as a message transfer, transformation and data translation platform.  But it is not good for putting too much Business logic in, especially if that logic is subject to change often.

    Thursday, August 22, 2019 9:23 PM
  • well the logic doesnt change, but the business want to implement this in BizTalk.

    Most was done in .Net code, but they want to move all logic to BizTalk which doesnt change much.

    But its huge and almost in 1 process flow.

    So was just wondering is there any mechanism where my parent Orchestration at the end of the shape can call child orchestration and so on....?


    Thursday, August 22, 2019 9:28 PM
  • Yes, use the Call Orchestration or Start Orchestration, depending if you want to run it in the same thread/synchronously or separate threaads 

    See blog Call and Start Orchestration - Interview Question of the Week #1 Day 2

    Thursday, August 22, 2019 10:54 PM
  • if I plan to use Start Orchestration :

    the messages and variables created in Parent Orchestration, will all that be available in child orchestration too ?


    Friday, August 23, 2019 9:48 AM
  • Hi,

    You can create new orchestration and call or start child orchestration from the parent orchestration depending upon the sync/async behavior. In case you are using call/start orchestration shape you need to pass the parameters to the child orchestration so that the same messages and variables are available in the child orchestration.

    Also, you can use the group shape to put the related shapes inside a group and then can collapse the same for better visibility and understanding.



    • Proposed as answer by Raghav Ranjan Thursday, May 21, 2020 3:53 AM
    Sunday, August 25, 2019 4:37 AM