locked
debatching in orchestration using receive pipeline in Biztalk RRS feed

  • Question

  • Hi all,

    I am having following XML with me i want to execute a loop and split following XML and create separate XML files and send to XML file location , how to do this ? 

    <Descriptors>
            <Descriptor id="358" group="1" value="MR Nitin Failure in system" />
            <Descriptor id="37" group="1" value="JULIE was here" />
            <Descriptor id="3" group="1" value="Review your input before submit" />
    </Descriptors>

    any help is well come, can point me to article or blog, thanks in advance.


    Thanks and Regards, Nitin.

    Friday, January 31, 2020 6:47 AM

All replies

  • Hi,

    You can do this using OOB functionality. Create an Envelope on the <Descriptors> element level, use an XMLReceive Pipeline, and BizTalk will do the debatching for you.

    Br,

    Leo


    Did my post help? Please use "Mark as answer" or "Propose as answer". Thank you!


    Tuesday, February 4, 2020 7:42 AM
  • If for some reason you cannot debatch and work in parallel as above (ideal solution), then you can loop using a Looping Functoid in a map.  Or if you need to handle the statements individually in an Orchestration you can pass it off to a .NET helper and return a collection.

    I use a little helper function that takes an XPath and returns a Queue which I then pop on each iteration of the loop and break when empty.


    If this is helpful or answers your question - please mark accordingly.
    Because I get points for it which gives my life purpose (also, it helps other people find answers quickly)
    Read my articles on: BizTalk | .NET

    Tuesday, February 4, 2020 7:52 PM