Microsoft BizTalk Server 2006 R2 Standard, FR Disk Kit, MVL DVD 5 MLF D75-01322 User Manual

Product codes
D75-01322
Page of 26
12 
 
counterparts  in  the  destination  schema.  Most  lines  in  Figure  8  show  this  kind  of  connection.  More 
complex transformations are also possible using  functoids. A functoid is a chunk of executable code 
that can define arbitrarily complex mappings between XML schemas. As the topmost line in Figure 8 
shows, the BizTalk Mapper represents a functoid as a box on the line connecting the elements being 
transformed. Since some of those transformations are quite common, BizTalk Server 2006 R2 includes 
a number of standard functoids for performing conversions, mathematical operations, and other tasks.  
Having  a  way  to  define  a  document’s  XML  schema  is  essential,  as  is  a  mechanism  for  mapping 
information across documents with different schemas. The BizTalk Editor and BizTalk Mapper address 
these  two  problems.  Yet  for  many  applications,  defining 
schemas  and  maps  isn’t  enough;  business 
logic must also be specified. How this is done for BizTalk applications is described next. 
Defining Business Processes 
Sending messages between different systems is a necessary part of solving the problems that BizTalk 
Server 2006 R2 addresses. Yet 
while plenty of useful applications can be built using only the product’s 
messaging  capabilities,  many  others  also  require  a  way  to  define  and  execute  process  logic.  This 
section describes the technologies BizTalk Server 2006 R2 provides to do this. 
Using Orchestrations 
In general, it’s always possible to implement an automated process directly in a language such as C# 
or  Visual  Basic.  Yet  writing,  maintaining,  and  managing  complex  business  processes  created  using 
conventional programming languages can be challenging. Like its predecessors, BizTalk Server 2006 
R2 
doesn’t take this approach. Instead, it allows creating a process’s logic graphically. Doing this can 
be  faster  than  building  the  process  directly  in  a  programming  language,  and  it  can  also  make  the 
process easier to understand, explain, and change.  
Successfully creating an automated business process usually requires collaboration between software 
developers and business people. To help with this, BizTalk Server 2006 R2 provides a tool for each. 
The developer tool runs inside Visual Studio, an environment in which software professionals feel at 
home. Most business people don’t find Visual Studio especially inviting, however, so BizTalk Server 
2006  R2  also  provides  a  subset  of  the  developer  tool  functionality  via  an  add-in  for  Visio.  An 
orchestration  created  in  the  Visual  Studio-based  tool  can  be  imported  into  the  Visio-based  tool  and 
vice-versa, which helps these two kinds of people work together to automate a business process.  
Stripped to its essentials, every business process is a  set of actions that together meet some useful 
business need. The Orchestration Designer in BizTalk Server 2006 R2 lets a developer define these 
actions  by  connecting  together  a  series  of  shapes  in  a  logical  way.  Some  examples  of  the  shapes 
available to an orchestration’s creator are the following: 
 The Receive shape, which allows the orchestration to receive messages.  
 The Send shape, which allows the orchestration to send messages. 
 The Port shape, which defines how messages are transmitted. Each instance of a port shape is 
connected to either a Send or Receive shape. Each port also has a type, which defines things such as 
what kinds of messages this port can receive, and a binding, which determines how a message is sent 
or received by, for example, specifying a particular URL. 
  The  Decide  shape,  which  represents  an  if-then-else  statement  that  allows  an  orchestration  to 
perform different tasks based on Boolean conditions. An Expression Editor, part of the Orchestration 
Designer, can be used to specify this conditional statement.