none
Multiple Message Types Received in the same orchestration. RRS feed

  • Question

  • I am processing Flat File or EDI messages in the same orchestration, what's the best way to get this done (simple and easy). I read some of the links related but I don't think Parallel is what I want to do, I receive one message and I can process to the end and then receive another message and complete that. Convoy, I guess assembles a group of messages and then processes? 

    Tried a couple of things but getting stuck.

    If anyone can provide some info without too much complications it would be appreciated.

    Regards


    Bico Bielich

    Friday, March 14, 2014 9:08 PM

Answers

  • Ideally, you would transform the incoming transport specific format, FF/EDI, to a common message type for use inside you application.  Then the Orchestraion would only receive this MessageType.

    So:

    FlatFileMessgae -> Map -> MyAppFormat

    EDI -> Map -> MyAppFormat

    These Maps would typically be on the Receive Port.

    • Proposed as answer by Girish R. Patil Saturday, March 15, 2014 6:51 AM
    • Marked as answer by Pengzhen Song Thursday, March 20, 2014 10:21 AM
    Friday, March 14, 2014 9:23 PM
    Moderator

All replies

  • Ideally, you would transform the incoming transport specific format, FF/EDI, to a common message type for use inside you application.  Then the Orchestraion would only receive this MessageType.

    So:

    FlatFileMessgae -> Map -> MyAppFormat

    EDI -> Map -> MyAppFormat

    These Maps would typically be on the Receive Port.

    • Proposed as answer by Girish R. Patil Saturday, March 15, 2014 6:51 AM
    • Marked as answer by Pengzhen Song Thursday, March 20, 2014 10:21 AM
    Friday, March 14, 2014 9:23 PM
    Moderator
  • Hi,

    The scenario put forward by you is candidate of Canonnical pattern.

    You create a internal schema which has all the elements and attributes required, then have couple of maps one for flat file to internal schema and the other for EDI to internal schema.

    Place this both maps on the receive port , so whenever either of the message comes in it will be transformed to your internal schema. And let the orchestration subscribe to the messages conforming to internal schema.

    You can also extend this for other message formats by just including dedicated map for it.


    Maheshkumar S Tiwari|User Page|Blog|BizTalk Server : How Map Works on Port Level

    Saturday, March 15, 2014 5:12 AM
  • If you get these messages from the same port then it would be simpler for you to accept these messages as "System.Xml.XmlDocument" type in your Orchestration and bind it to the receive port. Within the orchestration use the properties promoted by the EDI dissembler for identifying the type, etc.

    Regards.

    Saturday, March 15, 2014 8:04 AM