Scott Woodgate's OutBursts

BTS2004 Delivery Notifications

Scenario: You create a business process that receives a message and send it to multiple target systems.  For whatever reason the send from the business process fails ie. the message exists the business process and a later pipeline or adapter fails.

This failure could be pretty important information that you might want to make available to the orchestration for further decision making pr altering the flow. So how to you make that scenario work in BTS 2004?

1. In the orchestration designer right click on the port surface and create a new port

2. In the properties windows choose “Send“

3. Notice the new property delivery notification. Choose “transmitted“.

4. Create a scope

5. Create a send and hook it up to the port inside a scope

6. Right click on the scope and create an exception handler

7. Select the exception handler and enter the exception objectname: “myException“ (ie. whatever you want) and the ExceptionObjectType as Microsoft.XLANGs.BaseTypes.DeliveryFailureException

8. Inside the exception handler drop in a terminate shape and assign the error as “delivery failed“.

Now test your scenario by creating an exception in a pipeline component/adapter.

Pretty cool huh?

Published Wednesday, February 25, 2004 1:30 PM by scottwoo

Comments

 

Jody said:

Is there any way to get more detail about the reason for the exception? We can see DeliveryFailureException, but we would like to know why.
February 25, 2004 5:55 PM
 

Mike said:

If you have two send ports and let's say both of them use the SQL Adapter, can you have both act as one transaction? If one SQL Insert fails, I want both of the sends to roll back.
February 25, 2004 8:30 PM
 

Joris said:

Scott, Which build do you use? We use build 4712, but can't seem to find the property you are talking about.
February 27, 2004 12:37 AM
 

Joris said:

Let me refrase my question: Which build do you use, because in build 4712 it doesn't seem to work. I tried your example and added a send after the exception (in a decide shape), but it won't work.
February 27, 2004 2:00 AM
 

Brian Loesgen said:

Yes, VERY cool Scott. I'm using this approach in a solution that sends files by FTP. If the site goes down, now I can handle it intelligently.

So, what about in the other direction? Ie: if I have a receive location that's an FTP site, (and that receive location goes to an activating receive shape) and the site goes down, I want to handle it. Presumably the same approach won't work as the orchestration has not been instantiated. Is there any way I trap and handle this condition?
March 12, 2004 2:28 PM
 

Amadeu Campanelli said:

Joris,
did you find the delivery notification property? I'm new to BizTalk and I didn't this property too.
<br>
Could you help me?
April 28, 2004 11:04 AM
 

Christof Claessens' WebLog said:

June 25, 2004 3:18 AM
 

Amit Sawant said:

Hi


We have some doubt in Exception handling with MSMQT.

we have a scenario wherein we receive a flat file from a MSMQT port,transform it by using map
and transmit it to MSMQ of another m/c.

While transmiting we initialize a correlation set inorder to correlate the response of this transmit.

The send shape and receive shape for sending the message and receiving the response message are in same scope shape.

We have added a exception handler to this scope shape which handles System.Exception and which transmit the original message to temporary folder.

Orchestration works fine and we get desired output.

BUt if we remove the network code from the m/c(so that it cannot access the MSMQ of another m/c) the send should fail and
message should be transmited to temp folder.

The orchestration consumes the input file but doesn't raise an exception.No error are seen in event log also.

we also tried DeliveryFailure Exception,general exception in the exception object type.

Send port as delivery notification property =Trasmitted.
Number of retry=0

Why there are no error's in eventlog ???
why this exception is not handled ??

Regards
Amit
July 29, 2004 5:18 AM
 

Commonality said:

When you are invoking WebServices from your BizTalk Server 2004 orchestrations, you might need to ensure that two things happen...
March 29, 2005 9:01 PM
 

Send Port Acknowledgement | keyongtech said:

January 22, 2009 4:44 AM
New Comments to this post are disabled

© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Microsoft
Page view tracker