- Orchestrations

BizTalk Internals: Publishers and Subscribers

Here I am going to show details of the BizTalk Server Publishers and Subscribers. We will investigate all of them step by step. Publishers There are two main publishers: receive locations and orchestrations. The real number of publishers is bigger but let's talk about it later. Receive Location I have created a receive port with a File receive location and the PassThruReceive pipeline. Let’s drop a file into this location. There is no subscribers for it, so we get a suspended message with these promoted ......

BizTalk: Internals: the Partner Direct Ports and the Orchestration Chains

Partner Direct Port is one of the BizTalk hidden gems. It opens simple ways to the several messaging patterns. This article based on the Kevin Lam’s blog article. The article is pretty detailed but it still leaves several unclear pieces. So I have created a sample and will show how it works from different perspectives. Requirements We should create an orchestration chain where the messages should be routed from the first stage to the second stage. The messages should not be modified. All messages ......

BizTalk: Ordered Delivery

It is one more description of the Ordered Delivery (OD) in BizTalk. The main article about it is in MSDN. Here I am discussing the BizTalk Ordered Delivery “implementation details”. OD Considerations Ordered Delivery (sequential) mode is opposite of the “Parallel Delivery” mode. Parallel Delivery is the most productive mode; the Ordered Delivery is less productive mode. Transports such MSMQ and protocols, supporting the WS-ReliableMessaging, are the protocols supporting OD. Other protocols as FTP, ......

BizTalk: Sample: Error Handling

Recently I uploaded a "BizTalk: Sample: Error Handling" in MSDN Gallery This sample shows the BizTalk features: Routing Failed Messages in ports Catching Failed Messages with Send Port Catching Failed Messages with Orchestration Handling Exceptions inside Orchestration Handling SOAP Fault messages inside Orchestration ......

BizTalk Orchestration Naming Conventions

This is a second part of the BizTalk Naming Convention. Part 1: biztalk: BizTalk solution naming convention Special Orchestration Objects <Message> =: msg_ + <ShortMessageType> <Variable> =: var_ + <Name> <CorrelationSet> =: cor_ + <Name> <OrchestrationParameter> =: par_ + < Name> <RoleLink> =: roleLink_ + <Name> Note: These objects are special BizTalk objects. They are used in different language context and sometime they use different language ......

BizTalk: Using context for routing

[See Sample: Context routing and throttling with orchestration] Imagine the project where most of the routing happens between orchestrations. I.e. routing is mostly between the MessageBox and orchestration with direct endpoints. Imagine also the most of the messages are with the same Message type. Usually in this case messages got the special node only for the routing. For example, the field can be the “Originator” or “Recipient” or “From” or “To”. What wrong is with this approach, it creates the ......

BizTalk: Service Instances: Orchestration and Messaging

IMHO There should be the term "Port Instance" or something else. In HAT we can see Service Instances in two main classes: Orchestration and Messaging. The first one is quite understandable. But the second one is not described in BTS Help. As I can imagine it is the part of the port which created in "per-message" basis like Orchestration. Now "Messaging" is the term for it. But Messaging could be attached to anything in BizTalk, it is too wide term. But I don't mind any term. Now we DON'T have ANY ......

BizTalk: Sample: Context routing and Throttling with orchestration

[See BizTalk: Using context for routing] The sample demonstrates using orchestration for throttling and using context routing. Usually throttling is implemented on the host level (in BizTalk 2010 we can also use the host instance level throttling). This sample demonstrates the throttling with orchestration convoy, that slows down a message flow from some customers. Sample implements sort of quality service agreement layer for different kind of customers. The sample demonstrates the context routing ......

BizTalk: Part 2: Suspend shape and Convoy

Part 1: BizTalk: Instance Subscription and Convoys: Details This is a Part 2. I am discussing the Suspend shape together with Convoys and going to show that using them together is undesirable. In previous article we investigated the Instance Subscriptions and how they could create situation with dangerous zones in processing. Let' start with Suspend shape. [See the BizTalk Help] "You can use the Suspend shape to make an orchestration instance stop running until an administrator explicitly intervenes, ......

BizTalk: Part 1: Zombie, Instance Subscription and Convoys: Details

This is Part 1. Part 2. BizTalk: Suspend shape and Convoy Convoys are frequently used in the in the orchestrations in BizTalk Server. Sometimes we have got contra intuitive behavior in the convoys, when messages and orchestrations get suspended in unpredictable manner. This issue is well-known, the suspended messages get name the "zombie". The name is unofficial, but issue is still there. Here I would describe in details, what, when and why this zombie situations are happen. An orchestration can ......

BizTalk: History of one integration project

[Russian version of the article] "In the beginning God made heaven and earth. Then he started to integrate." At the very start was the requirement: integrate two working systems. [fairy tale of the system integrators] Small digging up: It was one system. It was good but IT guys want to change it to the new one, much better, chipper, more flexible, and more progressive in technologies, more suitable for the future, for the faster world and hungry competitors. One thing. One small, little thing. We ......

BizTalk: Compensation Model

BizTalk: Compensation Model As Charles Young mentioned, the Compensation is one of the most under-used features of the BizTalk. See “BizTalk Server 2006: The Compensation Model” article. If you didn’t read his article, I would strictly recommend it. Next article to read is “Transactions and Compensation Using BizTalk Server” by Richard Seroterand the "Atomic Transaction Shape" webcast by Alan Smith There are still many questions in using Compensation in BizTalk. · What is the proper order of the ......

BizTalk: xpath: How to work with empty and Null elements in the Orchestration

The problem is with the Empty-Null cases in the xpath expressions. Is it possible to separate all these cases in Expression shapes of the Orchestration xpath? For example, we have the record with <name> element, in such flavors: case: "NonEmpty" <ns0:People> <ns0:Name>Name_0</... <ns0:IsDependent>IsDe... .. case: "Empty" <ns0:People> <ns0:Name></ns0:Na... <ns0:IsDependent>IsDe... ......

BizTalk: Naming Conventions for BizTalk Solutions

I'm keeping the last, up-to-date version of the Naming Conventions on the Microsoft TechNet site. Version 3.1 2012-05-14Version 3.0 2011-12-26 [Added a Namespace term, it simplifies everything. Extracted the Orchestration conventions into a separate document.]Version 2.2, 2011-01-05Version 2.1, 2009-08-09 Here is the BizTalk Orchestration Naming Conventions ---------------------------... rules The “Naming guidelines for the .NET Framework types” are used ......

BizTalk: Debugging the BizTalk applications with the direct test send ports

" ...I have published an orchestration as a web service and consumed it from an aspx page. now, how do I see if I triggered the orchestration and how and where do I get the output (transformed message of the orchestration)? ..." It is a very common question, how to debug the BizTalk applications. Have you ever tried to use the BizTalk Orchestration Debugger? So painful experience. Never see the BizTalk developer who is using it in real work. One simple decision is creating the direct test send ports. ......

Full - Orchestrations Archive