none
Unable to trigger an orchestration from an HL7 message. What is "promotion" and why/when is it necessary? RRS feed

  • Question

  • See error below: unable to trigger an orchestration from an HL7 message. What is "promotion" and why/when is it necessary?

    Event Type:      Error

    Event Source:   BizTalk Server 2009

    Event Category:            (1)

    Event ID:          5778

    Date:                2/12/2010

    Time:                6:28:36 PM

    User:                N/A

    Computer:         VM29

    Description:

    The Messaging engine failed to process a message submitted by adapter:MLLP Source URL:localhost:11001. Details:The published message could not be routed because no subscribers were found. This error occurs if the subscribing orchestration or send port has not been enlisted, or if some of the message properties necessary for subscription evaluation have not been promoted.

    Wednesday, February 17, 2010 7:04 AM

Answers

  • Hi,

    WHat promotion is and why it is necessary can be read here: http://msdn.microsoft.com/en-us/library/aa561543(BTS.10).aspx. Regarding your error you could review this post: http://blog.hl7-info.com/archive/2008/08/04/Acknowledgment_Event_ID_5778__The_published_message_message_could.aspx.

    Regards,

    Steef-Jan Wiggers
    MCTS BizTalk Server
    http://soa-thoughts.blogspot.com/
    If this answers your question please mark it accordingly


    BizTalk Server
    • Marked as answer by msanson Monday, February 22, 2010 12:44 AM
    Wednesday, February 17, 2010 9:09 AM
    Moderator
  • Often this error occurs when not using the XmlReceive pipeline. Perhaps you are using the PassthruReceive rather than the XmlReceive?

    Property promotion helps you use send port filters for routing messages based on values in a message.

    If you use a receive shape you can set a filter to get the orchestration activation based on the promoted property.

    Thanks,
    If this answers your question, please use the "Answer" button to say so | Ben Cline
    • Marked as answer by msanson Monday, February 22, 2010 12:44 AM
    Wednesday, February 17, 2010 6:23 PM
    Moderator
  • Thanks to you both. As you can probably tell I am VERY new to BizTalk, although I've done HL7 integration for many years using other tools. The problem was that while the orchestration was in its own BizTalk application the ports were all still in the default "BizTalk Application 1". I was re-using the artifacts created from another of the tutorials and the tutorials are messy. The videos provided on MSDN showed that the application name can be explicitly set in the "Deployment" tab of a project's properties, which was news to me. Annoyingly though, when I created my new HL7 projects in their own BizTalk application and tried to create some send and receive ports I found that I could not select the HL7 Transmit pipelines, only the Pass through and default XML pipelines were available. I searched in vain to find out how I could make the HL7 pipelines visible to my new application, and in the meantime have given up and am creating all artifacts in "BizTalk Application 1".

    If you select your custom Application, in the Biztalk Administrator, right click, you can add, then Reference, and then just add a reference to your BiztalkApplication1 which will open up the HL7 pipelines.
    • Marked as answer by msanson Tuesday, March 16, 2010 8:45 PM
    Tuesday, March 16, 2010 4:40 PM

All replies

  • Hi,

    WHat promotion is and why it is necessary can be read here: http://msdn.microsoft.com/en-us/library/aa561543(BTS.10).aspx. Regarding your error you could review this post: http://blog.hl7-info.com/archive/2008/08/04/Acknowledgment_Event_ID_5778__The_published_message_message_could.aspx.

    Regards,

    Steef-Jan Wiggers
    MCTS BizTalk Server
    http://soa-thoughts.blogspot.com/
    If this answers your question please mark it accordingly


    BizTalk Server
    • Marked as answer by msanson Monday, February 22, 2010 12:44 AM
    Wednesday, February 17, 2010 9:09 AM
    Moderator
  • Often this error occurs when not using the XmlReceive pipeline. Perhaps you are using the PassthruReceive rather than the XmlReceive?

    Property promotion helps you use send port filters for routing messages based on values in a message.

    If you use a receive shape you can set a filter to get the orchestration activation based on the promoted property.

    Thanks,
    If this answers your question, please use the "Answer" button to say so | Ben Cline
    • Marked as answer by msanson Monday, February 22, 2010 12:44 AM
    Wednesday, February 17, 2010 6:23 PM
    Moderator
  • Thanks to you both. As you can probably tell I am VERY new to BizTalk, although I've done HL7 integration for many years using other tools. The problem was that while the orchestration was in its own BizTalk application the ports were all still in the default "BizTalk Application 1". I was re-using the artifacts created from another of the tutorials and the tutorials are messy. The videos provided on MSDN showed that the application name can be explicitly set in the "Deployment" tab of a project's properties, which was news to me. Annoyingly though, when I created my new HL7 projects in their own BizTalk application and tried to create some send and receive ports I found that I could not select the HL7 Transmit pipelines, only the Pass through and default XML pipelines were available. I searched in vain to find out how I could make the HL7 pipelines visible to my new application, and in the meantime have given up and am creating all artifacts in "BizTalk Application 1".
    Monday, February 22, 2010 12:44 AM
  • Thanks to you both. As you can probably tell I am VERY new to BizTalk, although I've done HL7 integration for many years using other tools. The problem was that while the orchestration was in its own BizTalk application the ports were all still in the default "BizTalk Application 1". I was re-using the artifacts created from another of the tutorials and the tutorials are messy. The videos provided on MSDN showed that the application name can be explicitly set in the "Deployment" tab of a project's properties, which was news to me. Annoyingly though, when I created my new HL7 projects in their own BizTalk application and tried to create some send and receive ports I found that I could not select the HL7 Transmit pipelines, only the Pass through and default XML pipelines were available. I searched in vain to find out how I could make the HL7 pipelines visible to my new application, and in the meantime have given up and am creating all artifacts in "BizTalk Application 1".

    If you select your custom Application, in the Biztalk Administrator, right click, you can add, then Reference, and then just add a reference to your BiztalkApplication1 which will open up the HL7 pipelines.
    • Marked as answer by msanson Tuesday, March 16, 2010 8:45 PM
    Tuesday, March 16, 2010 4:40 PM
  • Thanks for answering, but yeah, I found that one out a week or two ago. It was buried in some tutorial or tips somewhere.
    Tuesday, March 16, 2010 8:47 PM
  • Hi,

    WHat promotion is and whyit is necessary can be read here: http://msdn.microsoft.com/en-us/library/aa561543(BTS.10).aspx. Regarding your error you could review this post: http://blog.hl7-info.com/archive/2008/08/04/Acknowledgment_Event_ID_5778__The_published_message_message_could.aspx.

    Regards,

    Steef-Jan Wiggers
    MCTS BizTalk Server
    http://soa-thoughts.blogspot.com/
    If this answers your question please mark it accordingly


    BizTalk Server

    The information is nice, but it has nothing to do with my issue, Anybody can help?
    Sunday, August 8, 2010 1:16 AM