none
Message Properties Necessary for Subscription Evaluation Not Promoted RRS feed

  • Question

  • Ok now I have a new quandary:  The 999 file that WAS going to come in as EDI is now going to be treated as a flat file. One of the values needed to setup a trading partner profile comes in differently every time in this file for us--not even a range, but different every time. So, the plan is to treat the 999 as a flat file--no big deal, I rebuild the project as a flat file project. I have most of it responding as if okay (schemas validate, build and deploy succeed, etc) but now I get the following:

    "Error 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. Please use the Biztalk Administration console to troubleshoot this failure."

    I have checked the Admin Console and cannot make heads or tails out of what isn't there. I have promoted all the fields in my Inbound schema that I am using but do not see them in the Correlation setup. What am I missing here?

    Thanks in advance for assistance rendered---

    Thursday, July 11, 2013 9:17 PM

Answers

  • Ok, it appears subscribing to a value that is not promoted is not going to be acceptable by BizTalk. I removed the first line in the Filter (screenshot above) and refreshed and re-ran, now getting an error that suggests a problem interpreting the SQL call in my Send Schema.

    Thanks to everyone for their time helping me--all your input gave me the insight I needed to find the solution!

    • Marked as answer by N0F3AR Tuesday, July 16, 2013 4:24 PM
    Tuesday, July 16, 2013 4:24 PM

All replies

  • Few things.

    1. Run the Subscriptions Query in BT Admin, find whatever is supposed to pick up the message and verify the promoted properties.  To be completely sure of what's being promoted, you should setup a Send Port with a subscription on the Receive Port and leave it Stopped.

    2. What value is coming in differently?  If it's Sender ID, yes, that's a HUGE problem with how TPM works.  I have a component that overwrites the Sender ID in the stream before the EDI Disassembler which solves that problem.  You could take a similar approach then you could use the 999 schema.

    Thursday, July 11, 2013 10:01 PM
  • Ok, still having trouble. I have promoted all the fields as Distinguished that I am planning on using from the Flat File. This suggests to me they should be available to be subscribed to, but since I am not using a traditional EDI Schema it appears they are not. What else can I subscribe to in order to receive the message I am getting from the Orchestration? The error message suggests I am getting the info into the Transformation, just not out of it because of the Subscription issue:

     

     

     

    The Messaging engine failed to process a message submitted by adapter:FILE Source URL:C:\EDI\999\INBOUND\*.txt. 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. Please use the Biztalk Administration console to troubleshoot this failure. "

    Monday, July 15, 2013 3:19 PM
  • The Distinguish fields are only used for Accessing the values in orchestrations.

    For filtering in the send port or orchestration you need to Promote them and not distinguish them.

    Hope this helps

    Stefan


    BizTalk Consultant in France

    Monday, July 15, 2013 3:35 PM
  • I promoted one property (since this was the limit) shown below:

    In the Send port I tried to configure the Filter accordingly:

    I am guessing I have the value wrong in the Send Port Filter---any suggestions? I had a ton of stuff to choose from for the Send Port Filter but this seemed the only one that referred to my Application.

    Thanks--

    Tom

    Monday, July 15, 2013 4:05 PM
  • 1. Make sure the propertied defined in you Property Schema have the Property Schema Base set to MessageContextPropertyBase.  It's not the default.

    2. The value of the Promoted Property (as noted, Distinguished Fields are different) will be whatever the contents of the referred element is.  The * is a little suspicious.

    From the other post, if you Stop the Send Port, you can see exactly what properties are Promoted and what their value is.

    Monday, July 15, 2013 4:31 PM
  • I have looked at the Property Schema and do not see a value in the Properties for Property Schema Base to set it to MessageContextPropertyBase:


    Everything is a string, so it appears my choices all start with "XS", and nothing about the MessageContext. Remember I am not using an EDI Schema here, hoping that all the segments I have mapped in the flat file schema will be available without getting into the whole context thing.

    Am I looking in the wrong spot here?

    Thanks for your patience--I know you have endured my questions before--

    Tom

    Monday, July 15, 2013 5:23 PM
  • Also, I had to use the asterisk because the value coming in will be variable--it is not a hard-coded value but rather dynamic depending on the name of the file the 999 pertains to; this was my reason for deep-sixing the EDI format in BizTalk originally.
    Monday, July 15, 2013 5:25 PM
  • It's a Element Property itself, not a type.  Should be third from the bottom.
    Monday, July 15, 2013 6:30 PM
  • Made the change; saved, built, deployed, etc---same error. Now when I check the promotions on the Propety Schema, they are grayed out:

    I would expect this indicates something else has been turned off or set wrong now?

    Monday, July 15, 2013 6:38 PM
  • What you're seeing is correct.  You can't Promote that because that is the definition of a Promoted Property.

    You would go to the source element/attribute in your message schema and choose Promote/Show Promotions.

    Monday, July 15, 2013 7:28 PM
  • Sorry--that is done. Still getting same Subscription Error.
    Monday, July 15, 2013 7:38 PM
  • So, now you configure a Stopped Send Port filtering on something that's for sure, like Receive Port Name.  On that Suspended Message, you can verify all the properties, Promoted or not.
    Monday, July 15, 2013 8:09 PM
  • Beginning to look like not much is promoted...when I did promote the values specifically (the 4 as Distinguished, however). I know that is different but even the 5th, simply promoted, is showing as "Not Promoted" (see above):

    Monday, July 15, 2013 8:26 PM
  • Maybe a better screenshot:

    Monday, July 15, 2013 8:28 PM
  • Hmm..somethings not set right somewhere.  Those name values are way to long.
    Monday, July 15, 2013 9:02 PM
  • Here is the value for the ISA05 value I was promoting (not Distinguished). If I was guessing, I may have missed manually configuring something in here?

    /*[local-name()='ROOT' and namespace-uri()='http://EDI_PROCESSING.Schemas.999_FLAT_FILE_Schema_INBOUND']/*[local-name()='ISA' and namespace-uri()='']/*[local-name()='ISA05' and namespace-uri()='']

    This is the Node Path value from the Property Fields List on the Promote Properties window/ The Property associated with it is:

    ns0:Property1

    Ideas?

    Monday, July 15, 2013 9:06 PM
  • Hi Tom,

    You are receiving flat file , so which pipeline have you used ? Because if you use Passthru then no properties will be promoted.

    If not already done then you need to create a custom pipeline and use FlatFileDisassembler and need to configure schemas accordingly(http://msdn.microsoft.com/en-us/library/aa578441.aspx). This will help to promote the properties which can be later available for routing( using it in filter)


    I hope this helps!!!!!! Please mark as Helpful. If this answers your question, please mark it as "Answered". It will help to reduce visits to same post as it's already answered and will help guys with same question as yours without even posting it . Maheshkumar S. Tiwari|Team lead/Consultant(EDI/EAI)|iVision Software Pvt Ltd, Pune.

    Tuesday, July 16, 2013 1:40 PM
  • That is exactly what I am using--wish I could send/post the whole Project so you all could see what I am doing. I am sure it is probably something stupid-easy I am missing:

    Tuesday, July 16, 2013 1:56 PM
  • I have made changes to the Send port to include the BTS.ReceivePortName and still I am getting the following subscription error:

    A message received by adapter "FILE" on receive location "EDI_PROCESSING_1.0.0.0_EDI_PROCESSING.BizTalk_Orchestration1_INBOUND_999_FLAT_c563370af1dbbefc_ReceiveLocation" with URI "C:\EDI\999\INBOUND\*.txt" is suspended.

    Error details: The output message of the receive pipeline "EDI_PROCESSING.Receive999Pipeline, EDI_PROCESSING, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c563370af1dbbefc" failed routing because there is no subscribing orchestration or send port.

    The sequence number of the suspended message is 1. 

    MessageId:  {5E9177AE-35EC-4C41-BDE0-1A93316E5611}

    InstanceID: {456EE0C0-FD18-46D2-ADB5-D83526137F72}

    The file I am trying to parse is a 999 I must treat as a flat file due to the ISA08 coming in with a variable value every file, which makes it un-useable by the Trading Partner portion of the BizTalk Server EDI setup. It is a small file and I only need 5 or 6 fields, but unfortunately 3 of them are in the ISA segment so going flat is the best angle of attack. I am using a flat file disassembler in a flat file Receive Pipeline, and built the initial schema off the file we are receiving.

    Any assist with this error is appreciated. Right now it has me dead in the water.

    Tuesday, July 16, 2013 3:35 PM
  • Now I have added all the promoted types to the Send port in the filter:

    Now I am getting the following error:

    A message received by adapter "FILE" on receive location "EDI_PROCESSING_1.0.0.0_EDI_PROCESSING.BizTalk_Orchestration1_INBOUND_999_FLAT_c563370af1dbbefc_ReceiveLocation" with URI "C:\EDI\999\INBOUND\*.txt" is suspended.

    Error details: The output message of the receive pipeline "EDI_PROCESSING.Receive999Pipeline, EDI_PROCESSING, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c563370af1dbbefc" failed routing because there is no subscribing orchestration or send port.

    The sequence number of the suspended message is 1. 

    MessageId:  {FECEC480-D0A4-4CA2-A775-BA28C5EA5CD5}

    InstanceID: {D237F30E-F59E-49EA-A387-DACDC7EE09F3}

    One would think a variance in the message is a good thing, but the base message is the same. This makes no sense.

    Tuesday, July 16, 2013 4:07 PM
  • Ok, it appears subscribing to a value that is not promoted is not going to be acceptable by BizTalk. I removed the first line in the Filter (screenshot above) and refreshed and re-ran, now getting an error that suggests a problem interpreting the SQL call in my Send Schema.

    Thanks to everyone for their time helping me--all your input gave me the insight I needed to find the solution!

    • Marked as answer by N0F3AR Tuesday, July 16, 2013 4:24 PM
    Tuesday, July 16, 2013 4:24 PM