locked
Direct Binding - SendPort RRS feed

  • Question

  • Hi there, 

    My application misbehaves. 

    One of the send ports that is (I guess) directly bound and used by one of the orchestrations -is not picking up any messages.

    Now - because i have no documentation from the previous developer, I'm pretty much on my own doing a detective job here ;)

    So the big question is: 

    What is the quickest and most effective way to find out which orchestration is this port bound to ?



    God bless you all :)

    Monday, June 6, 2016 10:03 AM

All replies

  • Hi

    Check the Filter on the Direct Bound SendPort, that will give you some clues to point back to the orchestration. (launch the SendPort -> Filters -> check the filter expression)


    Thanks Arindam



    Monday, June 6, 2016 10:06 AM
    Moderator
  • I should have mentioned this but the problem is; there is no filter on that port, otherwise it would be mindblowingly easy to figure out :) 

    So once again: How do I find out which Orchestration is using this SendPort please ?


    God bless you all :)

    Monday, June 6, 2016 10:20 AM
  • Right-click this SendPort in Admin Console and hit View Dependencies.

    At the bottom, does anything show up in 'Used By' section?


    Thanks Arindam

    Monday, June 6, 2016 10:23 AM
    Moderator
  • Ok you export the group binding from the admin console. Then search the logical send port name in there. And see which orch is bound to this.

    When you see answers and helpful posts, please click Vote As Helpful, Propose As Answer, and/or Mark As Answer


    Monday, June 6, 2016 11:23 AM
    Answerer
  • Naughty Application! :)

    If you're on BizTalk Server 2013 or higher, check the Dependencies on the Port.  Right Click.

    Then check the Filters on the Send Port itself.

    Next, do a query on Subscriptions in the Group Hub.  That will tell you what the the Send Port is looking for.  It won't list the Orchestration outright, but there may be a clue, such as the Operation name.  This is most helpful for Specify Later bindings.

    Finally, export all the bindings and start searching.  You might find the Send Port under the Orchestration (Service) it's bound to.

    Monday, June 6, 2016 12:38 PM
    Moderator
  • 1. No dependencies

    2. No filters on the sendport (screenshot above)

    3. I will export the binding and see how it goes

    Thank you


    God bless you all :)

    Monday, June 6, 2016 1:43 PM
  •    

    Ideas ?

    <SendPort Name="spFTPSend_Cfly" IsStatic="true" IsTwoWay="false" BindingOption="0"> <Description>Cfly-int@Incorspi 672291ZX29PS159603d11w25r7C13cik</Description> <TransmitPipeline Name="Microsoft.BizTalk.DefaultPipelines.PassThruTransmit" FullyQualifiedName="Microsoft.BizTalk.DefaultPipelines.PassThruTransmit, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Type="2" TrackingOption="None" Description="" /> <PrimaryTransport> <Address>\\xxwsitwsp001\E\INTEGRATION\Incor\Inbound\%SourceFileName%</Address> <TransportType Name="FILE" Capabilities="11" ConfigurationClsid="5e49e3a6-b4fc-4077-b44c-22f34a242fdb" /> <TransportTypeData>&lt;CustomProps&gt;&lt;UseTempFileOnWrite vt="11"&gt;-1&lt;/UseTempFileOnWrite&gt;&lt;AllowCacheOnWrite vt="11"&gt;-1&lt;/AllowCacheOnWrite&gt;&lt;CopyMode vt="19"&gt;1&lt;/CopyMode&gt;&lt;FileName vt="8"&gt;%SourceFileName%&lt;/FileName&gt;&lt;/CustomProps&gt;</TransportTypeData> <RetryCount>0</RetryCount> <RetryInterval>5</RetryInterval> <ServiceWindowEnabled>false</ServiceWindowEnabled> <FromTime>2000-01-01T23:00:00</FromTime> <ToTime>2000-01-01T22:59:59</ToTime> <Primary>true</Primary> <OrderedDelivery>false</OrderedDelivery> <DeliveryNotification>1</DeliveryNotification> <SendHandler Name="BizTalkServerApplication" HostTrusted="false"> <TransportType Name="FILE" Capabilities="11" ConfigurationClsid="5e49e3a6-b4fc-4077-b44c-22f34a242fdb" /> </SendHandler> </PrimaryTransport> <SecondaryTransport> <Address /> <RetryCount>3</RetryCount> <RetryInterval>5</RetryInterval> <ServiceWindowEnabled>false</ServiceWindowEnabled> <FromTime>2000-01-01T23:00:00</FromTime> <ToTime>2000-01-01T22:59:59</ToTime> <Primary>false</Primary> <OrderedDelivery>false</OrderedDelivery> <DeliveryNotification>1</DeliveryNotification> <SendHandler xsi:nil="true" /> </SecondaryTransport> <ReceivePipelineData xsi:nil="true" /> <Tracking>0</Tracking> <Filter /> <Transforms /> <OrderedDelivery>false</OrderedDelivery> <Priority>5</Priority> <StopSendingOnFailure>false</StopSendingOnFailure> <RouteFailedMessage>true</RouteFailedMessage> <ApplicationName>Cfly.WorkManagement</ApplicationName> </SendPort>



    God bless you all :)

    Monday, June 6, 2016 2:07 PM
  • The bindings are listed under the Orchestration's Element.
    Monday, June 6, 2016 2:10 PM
    Moderator
  • Can you export the Bindings at BizTalk Group level and search for 'spFTPSend_Cfly' ?

    From the above the only thing that can be seen is that the Application name is Cfly.WorkManagement.


    Thanks Arindam

    Monday, June 6, 2016 2:11 PM
    Moderator
  • So I managed to extract the Bindings for the Entire group and then, I've found that the orchestration called SendToServicePartners references spFTPSend_Cfly. 


    God bless you all :)

    Monday, June 6, 2016 2:37 PM
  • I mnaged to find the subscription. 

    It is started, the only issue with it is, that it's not doing it's job, namely; it's not lacing the xml file in a required folder using spFTPSend_Cfly send port.

    Any ideas ? 


    God bless you all :)

    Monday, June 6, 2016 2:47 PM
  • So, there's your answer :) It's directly bound to SendToServicePartners .

    Open the orch, and check in Bindings. This SendPort will be listed.


    Thanks Arindam

    Monday, June 6, 2016 2:48 PM
    Moderator
  • Check-

    1. If the orch is getting triggered? Do you see any recent instances of the orch in Admin Console?

    2.Are there any suspended instances in BizTalk? Maybe the SendPort instance is failing?


    Thanks Arindam

    Monday, June 6, 2016 2:50 PM
    Moderator
  • 1. No, I could not spot it in the group hub

    2. I enabled Tracking on that orchestration

    3. No suspended instances

    4. The messages sit in the Outboud table on the SQL server, waiting for their status to get change

    5. Even if  I change the status int the field BATCH_STATUS from AWAITING_BATCH to STAGING, the Orchestration is not doing it's job

    6. However, a test send port that I have created, with filter on the ReceivePort reposnsible for picking up the message of type STAGING - is doing it's job - namely it routes the message to a test folder

    7. The only problem is that the Orchestration is changing the format of the message - which my sent port doesnt

    How do I debug that orchestrastion  ?

    How do I solve this problem please ?


    God bless you all :)

    Wednesday, June 8, 2016 7:53 AM
  • 5. Even if  I change the status int the field BATCH_STATUS from AWAITING_BATCH to STAGING, the Orchestration is not doing it's job

    6. However, a test send port that I have created, with filter on the ReceivePort reposnsible for picking up the message of type STAGING - is doing it's job - namely it routes the message to a test folder

    So, the ReceivePort from 6. picks up message of type STAGING ? How is the Orchestration from 5. bound to this ReceivePort - in orch bindings do you see this ReceivePort? 

    So, your problem is that the orch from 5. never gets triggered?


    Thanks Arindam


    Wednesday, June 8, 2016 8:28 AM
    Moderator