Subscribing to any part of the messages
 

Below is the XML that I would be receiving using WS. Later there can be many subscribers who  can subscribe
either PartyCrossReference or Business Party or Party Role or any such part of the messages.
How can I do that.  Please Advice

<ns0:MasterParty xmlns:ns0="http://www.www.com/PartyModel.xsd">
  <ns0:MasterPartyId>10</ns0:MasterPartyId>
  <ns0:PartyTypeCode>10</ns0:PartyTypeCode>
  <ns0:PartyStatusCode>10</ns0:PartyStatusCode>
  <ns0:PartyCrossReference>
    <ns0:MasterPartyId>10</ns0:MasterPartyId>    <ns0:SourceIdentifier>SourceIdentifier_0</ns0:SourceIdentifier>    <ns0:SourceSystemCode>SourceSystemCode_0</ns0:SourceSystemCode>
<ns0:StartDate>1999-05-31</ns0:StartDate>
<ns0:EndDate>1999-05-31</ns0:EndDate> <ns0:ConfirmationIndicator>ConfirmationIndicator_0</ns0:ConfirmationIndicator>
  </ns0:PartyCrossReference>
  <ns0:BusinessParty>
    <ns0:BusinessPartyId>10</ns0:BusinessPartyId>
    <ns0:BusinessName>BusinessName_0</ns0:BusinessName>
    <ns0:BusinessStartDate>1999-05-31</ns0:BusinessStartDate>
    <ns0:BusinessEndDate>1999-05-31</ns0:BusinessEndDate>
  </ns0:BusinessParty>
  <ns0:PartyRole>
    <ns0:MasterPartyId>10</ns0:MasterPartyId>
    <ns0:PartyRoleCode>PartyRoleCode_0</ns0:PartyRoleCode>
    <ns0:StartDate>1999-05-31</ns0:StartDate>
    <ns0:EndDate>1999-05-31</ns0:EndDate>
  </ns0:PartyRole>
</ns0:MasterParty>


January 31st, 2015 11:33pm

Hi Suresh,

There are two ways to achieve this.

1) If this is a content based routing scenario where no orchestration is required to implement any business logic.

You can have outbound maps at the send port to transform your inbound message to subscriber specific format. 

Refer: How to Configure Outbound Maps for a Send Port

How to Add Maps to Send Ports for Outbound Normalization Using BizTalk Explorer

Simple BizTalk Project without Orchestration

2) In case you are implementing orchestration, you can implement dynamic mapping.

Refer: Using Dynamic Maps in BizTalk

Orchestration logic will be similar to below:

Another good article around this: Dynamic Mapping Resolver

Free Windows Admin Tool Kit Click here and download it now
February 1st, 2015 12:07am

Hi Rachit Thanks for your reply. Is there any way we can do this using Multipart messages. Regards SURESH
February 1st, 2015 1:30am

Hi Rachit Thanks for your reply. Is there any way we can do this using Multipart messages. Regards SURESH
  • Edited by s u r e s h Sunday, February 01, 2015 6:29 AM
Free Windows Admin Tool Kit Click here and download it now
February 1st, 2015 9:28am

Hi Suresh,

Dont think too much. If the input message is the one you have shared above, your implementation will be similiar to what has been discribed in Using Dynamic Maps in BizTalk.

You have to use Decide Shape for different conditional path. You can have mutiple rule branches, multiple conditions so that you can execute different maps within each branch.

You should invest time thinking about the conditons on which you maps will be executed.

Rachit


February 1st, 2015 10:29am

 Is there any way we can do this using Multipart messages. Regards SURESH

Yes you can use Multi Part message and set the parts of the message dynamically . There is no restriction for this .

BizTalk gracefully deals with Multipart message and its better choice to deal with Add Part and Get Part Method  to get and set Multipart message .

What you need to is to extract  PartyCrossReference and BusinessParty node  through xpath in Orchestration and Dynamically set the Multipart message depending on your requirement .

Note : Internally all messages in BizTalk are multipart message and its always good Architecture to leverage it as of requirement were you don't need multiple branches to deal with message subscription .

I would suggest to go through below MSDN link

IBaseMessage Members (COM)

Thanks

Abhishek

Free Windows Admin Tool Kit Click here and download it now
February 2nd, 2015 1:02am

 Is there any way we can do this using Multipart messages. Regards SURESH

Yes you can use Multi Part message and set the parts of the message dynamically . There is no restriction for this .

BizTalk gracefully deals with Multipart message and its better choice to deal with Add Part and Get Part Method  to get and set Multipart message .

What you need to is to extract  PartyCrossReference and BusinessParty node  through xpath in Orchestration and Dynamically set the Multipart message depending on your requirement .

Note : Internally all messages in BizTalk are multipart message and its always good Architecture to leverage it as of requirement were you don't need multiple branches to deal with message subscription .

I would suggest to go through below MSDN link

IBaseMessage Members (COM)

Thanks

Abhishek

February 2nd, 2015 8:59am

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics