Sei sulla pagina 1di 64

Developing

and Deploying
Microsoft
BizTalk Server
2000
Version 3.0.0
Notice: While every precaution has been taken in the preparation of this material, neither the author nor
Cramsession.com assumes any liability in the event of loss or damage directly or indirectly caused by any
inaccuracies or incompleteness of the material contained in this document. The information in this document
is provided and distributed "as-is", without any expressed or implied warranty. Your use of the information in
this document is solely at your own risk, and Cramsession.com cannot be held liable for any damages
incurred through the use of this material. The use of product names in this work is for information purposes
only, and does not constitute an endorsement by, or affiliation with Cramsession.com. Product names used
in this work may be registered trademarks of their manufacturers. This document is protected under US and
international copyright laws and is intended for individual, personal use only.
For more details, visit our legal page.
Check out these great features
at www.cramsession.com
> Discussion Boards
http://boards.cramsession.com
> Info Center
http://infocenter.cramsession.com
> SkillDrill
http://www.skilldrill.com
> Newsletters
http://newsletters.cramsession.com/default.asp
> CramChallenge Questions
http://newsletters.cramsession.com/signup/default.asp#cramchallenge
> Discounts & Freebies
http://newsletters.cramsession.com/signup/ProdInfo.asp
Your Trusted
Study Resource
for
Technical
Certifications
Written by experts.
The most popular
study guides
on the web.
In Versatile
PDF file format




Developing and Deploying
Microsoft BizTalk Server 2000
Version 3.0.0



Abstract:
This study guide will help you prepare for the Microsoft exam 70-230,
Developing and Deploying Microsoft BizTalk Server 2000. This exam is an
elective for both the MCSE and MSCD and measures your ability to analyze,
design, build and implement integrated business process solutions by using
Microsoft BizTalk Server 2000.


Find even more help here:



12/14/2001
2001 All Rights Reserved BrainBuzz.com

2


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

3


Contents:
Planning and Designing BizTalk Server 2000 Solutions .................................................. 5
Plan and Design the Security Architecture................................................................. 5
Design the BizTalk Server Environment ................................................................. 5
BizTalk Server 2000 in a DMZ .............................................................................. 7
Design certificate services. Considerations include certificate placement and encryption
strategy. ........................................................................................................... 8
Plan and design BizTalk Server for performance, maintainability, extensibility, availability,
scalability, and reliability ........................................................................................ 8
Plan and design integration with existing applications ................................................. 9
Installing BizTalk Server 2000 ................................................................................. 10
Install BizTalk Server........................................................................................... 10
MSDN: Minimum Hardware Requirements ............................................................ 10
MSDN: Software Requirements........................................................................... 10
Attended installations........................................................................................ 13
Unattended installations .................................................................................... 14
Building Document Interchanges.............................................................................. 15
BizTalk Document Tracking................................................................................... 15
BizTalk Messaging Manager .................................................................................. 16
Create Messaging Ports........................................................................................ 18
Configure Organizations and Applications................................................................ 18
Configure Document Definitions ............................................................................ 19
Create and configure messaging ports.................................................................... 19
Select and Create Envelopes................................................................................. 21
Create and Configure Channels ............................................................................. 22
Configure receive architecture............................................................................... 25
Configure receive functions to receive documents via FTP....................................... 25
Configure Receive Functions to Receive Documents via Message Queuing................. 27
Configure message tracking and logging by using BizTalk Messaging Manager........... 28
Creating Auxiliary Components for BizTalk Server Solutions ......................................... 31
Create a COM+ Component that Implements Custom Transport Logic......................... 31
Create Application Integration Components (AICs) ................................................ 31

Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

4


Create Pipeline Components............................................................................... 31
Submit Documents Programmatically .................................................................. 31
Administering BizTalk Server Solutions...................................................................... 32
Monitor and Optimize BizTalk Server Performance.................................................... 32
Performance Counters....................................................................................... 32
Monitor BizTalk Server by using Document Tracking and Activity (DTA).................... 35
Optimize BizTalk Server for receive and submit processing. .................................... 36
Monitor BizTalk Orchestration Services by using the XLANG Event Monitor ................ 37
BizTalk Server Administration............................................................................. 38
Monitor BizTalk Server queues ........................................................................... 40
Windows Management Instrumentation (WMI)...................................................... 40
Creating Schemas and Transformations..................................................................... 41
Create, import and modify schemas by using BizTalk Editor....................................... 41
Create Schema Mapping by using the BizTalk Mapper ............................................... 44
Functoids and Validation ...................................................................................... 45
Conversion Functiods: (Conversion functoids)....................................................... 49
Implementing Business Processes by using BizTalk Orchestration Designer .................... 54
Design the Business Process by using Flowchart Shapes ........................................... 56
Flowchart Shapes ............................................................................................. 57
Bind Business Process Implementation Shapes ........................................................ 58
Business Process Implementation Shapes ............................................................ 59
Create Transactional Business Processes ................................................................ 59
Create long-running and short-lived transactions .................................................. 60
Diagnose and resolve transactional and component errors...................................... 61
Create Correlations back to long-running business processes .................................. 62
Map the data flow between messages. ................................................................... 62
Configure orchestration ports for communication between business processes and
transport bindings ............................................................................................... 62

Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

5



Planning and Designing BizTalk Server 2000 Solutions
Plan and Design the Security Architecture
Design the BizTalk Server Environment
BizTalk server 2000 can be designed with security in mind because it fits right into
Microsofts .NET architecture. This product was designed to be able to be secured.
Amazingly enough, BizTalk Server can work behind firewalls. Points to consider about using
Firewalls is that they of course help secure internal networks, but introduce latency and may
potentially create a single point of failure. Even if a load-balancing mechanism is used to
alleviate the single point of failure, a firewall could reduce a network's performance if the
proper hardware is not selected. To setup BizTalk with a firewall solution and to properly
design the security architecture, consider the following:
One firewall configuration
Only one firewall separates the corporate network and the servers from the Internet
Its the cheapest configuration, but when an intruder gains access to the network, he
has the access to all the servers
Two firewall configuration
One firewall separates a set of servers from the Internet, and the other separates
those servers from the DB, the other servers, and the corporate network
The corporate network is more protected from intruders, but internal personnel can
gain the access to important servers
Three firewall configuration
Its like the two firewall configuration, but a firewall also separates the corporate
network and the other server network
Its the expensive configuration, but also the most secure
DMZ (Demilitarized Zone)
Similar to the two and three firewall configuration
A DMZ can also be obtained using a multihomed server (a server with 2 network
cards) with no IP-forwarding between the two cards, and protected from the Internet
with a firewall

When configuring a BizTalk Server 2000 environment with a firewall, two primary
configurations are recommended:


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

6


BizTalk Firewall Configurations:
Configuration 1 Install some servers on an internal corporate
network, and some, which communicate to trading
partners, on a corporate demilitarized zone (DMZ).
The servers in the DMZ should use local transport
services, such as HTTP, Message Queue, or SMTP.
The servers in the DMZ send documents through
another firewall to Microsoft SQL Server. This
configuration will allow servers, such as BizTalk
Server and HTTP in the DMZ, to communicate with
Microsoft SQL Server through an internal firewall
Configuration 2 Install the servers on a corporate network. Trading
partners exchange documents through the Internet,
sending their data using SMTP/HTTP servers in the
DMZ (first firewall of protection). These servers then
send the data to the servers residing on the
corporate network through a second firewall

Note: Configuration 1 and 2 will impact performance. To avoid a noticeable degradation in
performance, you can construct the firewall to accommodate a typical number of
transactions between an organization and its trading partners


Microsoft BizTalk Server 2000

BizTalk Server 2000 in a DMZ
This Topology Map will show where the BizTalk server may sit within your Roll Cage
Topology. This may help aid in your design:

Possible BizTalk Configuration in the Enterprise:
BizTalk
Decoy
Internet
Web Cluster
Mgmt DB
Server
BizTalk
SQL Server


Please note that this is only a sample and that multiple types of configurations are available.
A full-blown rollout of BizTalk with a complete .NET infrastructure can take many forms and
configurations.

Knowledge Base Articles on BizTalk Security:

HOWTO: Secure the BizTalk Server Messaging Service (Q275849)
o You cannot secure a default installation of BizTalk Server because the BizTalk
Server state engine does not validate its callers, and the BizTalk Server state
engine default configuration must run under the context of an interactive user
BUG: Core Interaction Problems Between BizTalk and ISA Servers (Q275851)
o When you use reverse proxy to send an HTTPS POST request from BizTalk
Server to an external address of an Internet Security and Acceleration (ISA)
Server, you may experience problems

12/14/2001
2001 All Rights Reserved BrainBuzz.com

7



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

8


FIX: Basic Authentication Proxy Support Is Added to BizTalk Server (Q287533)
FIX: Cannot Select a Verisign SSL Client Authentication Certificate (Q287670)

Design certificate services. Considerations include certificate
placement and encryption strategy.
Digital certificates bind a cryptographic key with one or more attributes of a user and are
issued by certification authorities

Certificate Servers in a BizTalk Environment
A certificate server stores certificates for a user and for a computer. Every user has a
certificate store, and every computer has its own certificate stores. If a user creates
a certificate, Windows 2000 assumes the certificate is for the user
To provide the proper security, BizTalk Server 2000 needs all trading partner
certificates to be stored in the BizTalk store located under the Certificates (Local
Computer) of the Certificates console
BizTalk Server manages certificates through Microsoft Windows 2000 that supports
Internet-standard X.509 digital certificates

Plan and design BizTalk Server for performance, maintainability,
extensibility, availability, scalability, and reliability

To successfully plan an initial architecture, consider the following:
One server with Microsoft SQL Server and BizTalk Server can be used to process a
low volume of transactions
Installing BizTalk Server and SQL Server on separate machines can be used for a
moderate volume of transactions.
An existing SMTP transport service can be used to send and receive data. Placing this
server on a separate server is recommended for this transport type
HTTP, Message Queuing, or File transport services can be used to write data to disk
drives on other servers than the local BizTalk Server, which can improve BizTalk
Server performance
An initial architecture should contain as many separate servers as possible


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

9


Plan and design integration with existing applications
BizTalk was made to be a middle-man by nature; therefore it needs to be able to integrate
seamlessly with existing and future applications. These applications are listed below.

Planned Integration:
Integration with existing applications can be obtained in various ways:
COM If applications are COM-enabled Windows Applications
they can talk directly to BizTalk Server via its COM
Interfaces
MSMQ If applications can interact with MS Message Queue
(directly or via a gateway) they can talk to BizTalk Server
via its support for MSMQ
Shared Applications capable to write on a Windows Shared
directory can put or read their documents in that way. If
applications are capable to interact with an FTP server,
it's possible to share a directory via FTP
SMTP It's also possible to interact with Mail clients with the
SMTP protocol
Custom If there is no standard ways to interact with an existing
application it's always possible to create custom
transports



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

10


Installing BizTalk Server 2000
Install BizTalk Server
Installing BizTalk Server 2000 can prove to be quite a challenge not just configuring the
product against SQL Server, but also configuring Visio, and all the prerequisites that are
required. Lets look at whats needed:
MSDN: Minimum Hardware Requirements

Minimum Hardware:
CPU An Intel Pentium 300Mhz processor
RAM 128 MB of RAM
Disk Space A 6 GB hard disk
Cdrom A CD-ROM drive
Network A network adapter card

MSDN: Software Requirements
Software requirements will mainly depend on the type of install you are going to do,
whether it is Complete, Custom or Tools only. (Outlined below)

Minimum Software:
OS Platform Microsoft Windows 2000 Pro, Server or Advanced
Server, with SP1 or later, NTFS file system, IIS
and MSMQ installed
Accounts A BizTalk Server in a production environment
must run under a service account (that can run
when nobody is logged on), and not with a
normal user account.
Browser Microsoft Internet Explorer 5 or later
Application Microsoft Visio 2000 Standard SR-1A or later
(only to use BizTalk Orchestration Designer)
Database Microsoft SQL Server 7.0 SP2 or SQL Server
2000 (not necessary for the Tools Installation)
Web Server A running WWW Publishing Service is needed for
BizTalk Messaging Manager

Microsoft BizTalk Server 2000


Installation Notes:
To avoid problems using the BizTalk Server 2000 repository, you must clear the
Enable authoring option in IIS
Its possible to install BizTalk Server 2000 using the Installation Wizard (Microsoft
BizTalk Server.msi) and following the step-by-step process, or using Microsoft
Windows Installer from the command line (Msiexec.exe)
The second method is used for large-scale, unattended installations

Known Problems with Installation:
Please address the following Knowledge Base Articles when doing an Installation of BizTalk
Server 2000:
INFO: List of Bugs Fixed in BizTalk Server 2000 Service Pack 1 (Q297445)
FIX: Availability of Microsoft BizTalk Server 2000 Pre SP1 Rollup Hotfix (Q293789)
BUG: SQL Server Setup Causes Assertion Failures When BizTalk Server Is Installed
on Cluster (Q293352)
o When you install Microsoft SQL Server 2000 on a Microsoft Windows 2000
clustered computer that already has BizTalk Server 2000 installed, you may
receive an error
BUG: BizTalk Server: Custom Install May Not Install All Needed Files for Messaging
Manager (Q292064)
Cannot Change Computer Name after BizTalk Is Installed (Q283221)
o When you change the computer name on a computer running BizTalk Server
2000, and you restart (reboot) the computer, you may experience problems
Computer Restarts Repeatedly When You Run BizTalk Server 2000 Setup (Q275850)
o When you run the BizTalk Server 2000 Setup program, if the program stops
responding (hangs) or fails (crashes), and you restart (reboot) your
computer, the BizTalk Messaging Service may cause Windows 2000 to restart
repeatedly
Problems Occur When You Uninstall and Reinstall BizTalk Server without Rebooting
(Q275834)
o When you uninstall BizTalk Server 2000 and the system prompts you to
reboot (restart) your computer, if you reinstall the software without restarting
the computer, the system continues to function normally until you restart it
Only NetBIOS Names are supported in BizTalk Server 2000 (Q275813)

12/14/2001
2001 All Rights Reserved BrainBuzz.com

11



Microsoft BizTalk Server 2000

o When you reference SQL Server names or BizTalk Server names in the
BizTalk Server environment, you must always use the NetBIOS computer
name
BizTalk Server Setup Does Not Remove Files That Have Been Changed When You
Uninstall or Reinstall (Q277968)
o When you uninstall BizTalk Server 2000, Microsoft recommends that you
manually delete the Program files\Microsoft BizTalk Server directory (folder)
before you reinstall BizTalk Server.
PRB: BizTalk Server Setup Reports Ambiguous Error (Q277969)
25 MB of Free Hard Disk Space Is Required on the System Drive for Installation
(Q277972)
o BizTalk Server 2000 requires a minimum of 25 MB of free disk space on the
system drive to install correctly. Insufficient disk space on the system drive
may result in a runtime error during the BizTalk Server Setup file copy
process
BUG: Internal Error Dialog Box Displays When You Cancel the Database Setup
Wizard (Q276635)
o When you install BizTalk Server 2000, if a user chooses to cancel the setup
process while the database setup wizard is running, an internal error message
dialog display appears
BizTalk Server 2000 Installation Changes the Sort Order on the Programs Menu
(Q276817)
BizTalk Server Setup Error If SQL Server Authentication Is Set to "Windows only"
(Q276812)
Orchestration Persistence Database Setup Does Not Retain SQL Instance Default
from Setup (Q276896)
o During the installation of BizTalk Server 2000, the Orchestration Persistence
database is installed by using a separate executable (XLANGsetupDB.exe).
There may be issues related to this

Readme Files
INFO: BizTalk Server 2000 Readme.htm Part 1 of 3 (Q284190)
INFO: BizTalk Server 2000 Readme.htm Part 2 of 3 (Q284194)
INFO: BizTalk Server 2000 Readme.htm Part 3 of 3 (Q284196)
PRB: Microsoft Word Required to View BizTalk Readme Files Correctly (Q282268)
Blank.hlp File Is Installed During Microsoft BizTalk Server 2000 Setup (Q278216)


12/14/2001
2001 All Rights Reserved BrainBuzz.com

12



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

13


Attended installations
Most likely you will be performing an attended installation. If so, here are the types and
procedures for doing it.

Installation Types:
Complete Type: Includes all BizTalk services and tools. This
type enables you to perform a complete installation
of BizTalk Server 2000 that includes all BizTalk
services and tools. Recommended if you want all
options
Requirements: Microsoft Windows 2000 Server,
Microsoft Windows 2000 Advanced Server, or
Microsoft Windows 2000 Professional with the NTFS
file system and Service Pack 1, Microsoft Internet
Explorer 5 or later, Microsoft Visio 2000 SR-1A or
later (required to use BizTalk Orchestration
Designer), Microsoft SQL Server 7.0 and SQL Server
Service Pack 2 or SQL Server 2000
Tools Type: Performs a complete installation of the
BizTalk Server 2000 tools, including BizTalk
Orchestration Designer, BizTalk Document Tracking,
BizTalk Editor, and BizTalk Mapper. The BizTalk
Server 2000 parser, serializer, correlation, and run-
time binaries are not installed
Requirements: Microsoft Windows 2000 Server,
Microsoft Windows 2000 Advanced Server, or
Microsoft Windows 2000 Professional with the NTFS
file system and Service Pack 1, Microsoft Internet
Explorer 5 or later, Microsoft Visio 2000 SR-1A or
later (required to use BizTalk Orchestration
Designer)
Custom Type: Performs a custom installation that includes
any combination of BizTalk Server 2000 tools and
services. If Custom Installation was selected, the
Custom Setup page will appear. Its necessary to
follow the instructions to select all the needed
components. The exact order of the pages depends
on which components are selected. When the
Custom pages are finished, the Ready to install
page will appear. Choose Install and when the
installation is finished its possible to read the
Readme file

Microsoft BizTalk Server 2000

Requirements: Microsoft Windows 2000 Server,
Microsoft Windows 2000 Advanced Server, or
Microsoft Windows 2000 Professional with the NTFS
file system and Service Pack 1, Microsoft Internet
Explorer 5 or later, Microsoft Visio 2000 SR-1A or
later (required to use BizTalk Orchestration
Designer), Microsoft SQL Server 7.0 and SQL Server
Service Pack 2 or SQL Server 2000

For In depth steps, notes and detailed information, please visit the following links on
Technet:
Hardware and Software Requirements
Installation Instructions
Custom Installation
Tools Installation
Complete Installation
Silent Installation
Removing BizTalk Server 2000

Unattended installations
KB Articles:
Please visit the Knowledge Base for learning to create a silent installation of BizTalk:
How to Create a Silent Installation for BizTalk Server (Q295647)
More info for Silent Installs:
DOC: Windows Installer Error "Incorrect Command Line Parameters" When You Run
Sample in BizTalk Server Installation Guide (Q295567)

Unattended Installs:
To perform an unattended installation of BizTalk Server, its necessary to specify all
the options from the command line. To do this you need to open the Command
Prompt.
Many organizations need to automate the installation process for BizTalk Server to
make the install process go easier. Anyone who has installed BizTalk knows that
many, many questions need to be answer and many configuration changes may
need to occur

12/14/2001
2001 All Rights Reserved BrainBuzz.com

14



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

15



Sample:
Msiexec /I "\\server\folder\Microsoft BizTalk Server.msi" /q
/Lv*"C:\Temp\install.log" INSTALLLEVEL=200 ALLUSERS=1
PIDKEY="product key (without dashes) DSNCONFIG="file.ini"

Switches:
/I Tells the Windows Installer to install a product
/q Doesnt display the user interface
/Lv* Produces a log file
INSTALLLEVEL INSTALLLEVEL=200 installs the server, =100
(default) installs only the tools
PIDKEY Is the product key
DSNCONFIG Contains the path of the .ini file with all the
installation information

Note: For step-by-step instructions and detailed information, please visit MSDN.


Building Document Interchanges
BizTalk Document Tracking
Create an Advanced Query
Go to BizTalk Document Tracking => Advanced Query area => click New
This will open the Advanced Query Builder page
Source selection list => select an option for your source selection criteria
This is the name of the captured field for which you are searching
Go to Operators list => click an operator
Go to Value box => type a value
Optional: Go to AND/OR list => click either AND or OR to combine or compare
this condition with another condition


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

16


BizTalk Messaging Manager
BizTalk Messaging Manager is used to administer:
Organizations A trading partner or a business unit within a
trading partner, or your own business
Applications BizTalk applications
Messaging ports A set of properties that directs how documents
are enveloped, secured, and transported to a
designated destination organization or
application
Distribution lists A group of messaging ports that can be used to
send the same document to several different
trading partner organizations or applications of
the home organization
Note: In the BizTalk Messaging Configuration
object model, this is referred to as a port
group
Channels A set of properties that designates the source
of documents and defines specific processing
steps that are performed by BizTalk Messaging
Services before a document is delivered to the
destination. This is designated by the
messaging port or distribution list with which
the channel is associated
Envelopes A set of properties that defines an envelope
Note: Envelope properties include an envelope
format and can include a pointer to an
envelope specification
Document
definitions
A set of properties that represents a specific
document
Note: Document definition properties include a
pointer to a document specification and can
include global tracking fields and selection
criteria

The BizTalk Messaging Manager also has a search-engine style interface where its possible
to query for all the managed items as seen in Figure 1.


Microsoft BizTalk Server 2000

Figure 1: BizTalk Messaging Manager




12/14/2001
2001 All Rights Reserved BrainBuzz.com

17



Microsoft BizTalk Server 2000

Create Messaging Ports
To create messaging ports In BizTalk Messaging Manager go to the File menu => point to
New => point to Messaging Port, and then complete one of the following steps:

Figure 2: BizTalk Messaging Manager Configuration Options


To create a messaging port to a trading partner organization, click To an
Organization
To create a messaging port to an internal application, click To an Application
To manage previously configured Messaging ports, select to do so
To manage previously configured Channels, select to do so

Note: Once a BizTalkPort object has been created and saved, the destination organization
and the openness associated with the endpoint cannot be changed.

Configure Organizations and Applications
Creating Organizations and Applications:
Organizations can be created on the File menu => New Organization in the BizTalk
Messaging Manager
The New Organization dialog box is opened
On the General tab it's possible to set the organization name and comments
On the Identifiers tab it's possible to set the organization identifiers for the
organization

12/14/2001
2001 All Rights Reserved BrainBuzz.com

18



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

19


Applications can be created only for the home organization and can be added or
modified from the home organization's properties
Note: For step-by-step instructions and detailed information, please visit MSDN.

Configure Document Definitions
Document Definitions Configuration:
Document definitions can be created on the File menu, New -> Document Definition
in the BizTalk Messaging Manager
At this point the New Document Definition dialog box is opened
On the General tab it's possible to set the name of the document definition and to
select the document specification
On the Global Tracking tab it's possible to set the global tracking properties
On the Selection Criteria tab it's possible to set the selection criteria that are a
unique set of name-value pairs that BizTalk Server 2000 only uses to process EDI
documents
Note: For step-by-step instructions and detailed information, please visit MSDN.

Create and configure messaging ports
Messaging Ports Creation and Configuration
Messaging ports can be created on the File menu, New -> Envelope in the BizTalk
Messaging Manager
It's possible to create a messaging port to a trading partner organization (To an
Organization) or to an internal application (To an Application)
At this point the New Messaging Port Wizard is opened
On the General Information page it's possible to select the name and the comments
for the message port
If the messaging port is for an organization, in the Destination Organization page it's
possible to choose to use an open port or a specific organization. It's then possible to
select the Organization and the Primary and Backup transport
Note: For step-by-step instructions and detailed information, please visit MSDN.


Microsoft BizTalk Server 2000

Figure 3: New Messaging Port


If the messaging port is for an application, in the Destination Application page it's
possible to choose to create a new XLANG schedule, to select a running XLANG
schedule or to select an Application. It's also possible to select the Primary and
Backup transport
On the Envelope Information page it's possible to select an envelope and to override
its default properties
On the Security Information page it's possible to select the encoding, the encrypting
and all the related information like digital signatures and certificates


12/14/2001
2001 All Rights Reserved BrainBuzz.com

20



Microsoft BizTalk Server 2000

Figure 4: Security Information Page


At this point it's possible to go to the Channel Wizard to create a new channel or to
select a Channel type (From an organization or From an application)

Select and Create Envelopes
Creating Envelopes
Envelopes can be created on the File menu, New => Envelope in the BizTalk
Messaging Manager
Once the New Envelope dialog box appears, it's possible to set the Envelope name
and the Envelope format
There are some envelope formats available:
o CUSTOM XML
o X12
o EDIFACT
o FLATFILE

12/14/2001
2001 All Rights Reserved BrainBuzz.com

21



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

22


o CUSTOM
o RELIABLE
If custom XML, flat-file, or custom format is chosen, it's possible to select a
specification for the envelope
The Reliable format processes envelopes that are compliant with BizTalk
Framework 2.0. For more information, go to the Microsoft BizTalk Web site
Note: For step-by-step instructions and detailed information, please visit MSDN.

Create and Configure Channels
Creating a Channel
A Channel can be created from a Messaging Port or a Distribution List, by selecting
File, New => Channel
A channel can be created from an Organization or from an Application
At this point the New Channel Wizard is opened
On the General Information page it's possible to set the channel name, a comment
and to specify if it's a receipt channel (that is a special kind of channel that sends a
receipt to the sender)
If the channel is From an Organization, the Source Organization page is opened and
it's necessary to select an Organization and optionally to override its default
properties
If the channel is from an Application, the Source Application page is opened and it's
necessary to select an Application and optionally to override its default properties.
It's possible to select an XLANG schedule or a home organization's application


Microsoft BizTalk Server 2000

Figure 5: New Channel Source Application Dialog Box


On the Inbound Document page it's possible to select the inbound document
specification, to enable the verification of the digital signature, to enable the filtering
and to enable the tracking of the document
On the Outbound Document page it's possible to select the outbound document
specification, the optional map to apply to the inbound document, and to enable the
digital signing of the document
On the Document Logging page it's possible to enable the logging of both the
inbound and the outbound document's in XML or native formats


12/14/2001
2001 All Rights Reserved BrainBuzz.com

23



Microsoft BizTalk Server 2000

Figure 6: New Channel Document Logging Dialog Box


On the Advanced Configuration page it's possible to override Messaging port or
Distribution list defaults and to set other advanced properties like the number of
retries


12/14/2001
2001 All Rights Reserved BrainBuzz.com

24



Microsoft BizTalk Server 2000

Figure 7: New Channel Advanced Configuration Dialog Box


Note: For step-by-step instructions and detailed information, please visit MSDN.

Configure receive architecture
There are two types of receive functions in BizTalk Server: File and Message Queuing

Configure receive functions to receive documents via FTP
File Receive Functions
A File receive function is activated when there is activity in the directory that the
receive function monitors. The File receive function removes the files from the
directory and submits them to BizTalk Server 2000, so it cannot work with read-only
files

12/14/2001
2001 All Rights Reserved BrainBuzz.com

25



Microsoft BizTalk Server 2000

It's possible to configure the username and the password used to connect to the
directory, if needed
It's possible to select the file extension that the receive function monitors
To allow FTP clients to interact with this receive function, it is necessary to share the
listened directory with FTP Service in IIS and allow FTP clients to write in that
directory

Figure 8: Add A File Receive Function


Note: For step-by-step instructions and detailed information, please visit MSDN.

12/14/2001
2001 All Rights Reserved BrainBuzz.com

26



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

27



Configure Receive Functions to Receive Documents via Message
Queuing
Message Queuing Receive Functions
A Message Queuing receive function is activated based on activity in a message
queue. This receive function extracts the interchange or document from the queue
and submits it to BizTalk Server 2000
BizTalk Server is designed to work with raw Message Queuing application
programming interfaces (APIs), and these API calls work only with the format name
property
This is the format to use: Direct=OS:<servername>\<queuename>
It's possible to configure the username and the password used to connect to the
queue, if needed


Microsoft BizTalk Server 2000

Figure 9: Add a Message Queuing Receive Function


Note: For step-by-step instructions and detailed information, please visit MSDN.

Configure message tracking and logging by using BizTalk Messaging
Manager
Configure message tracking and logging
BizTalk Messaging Manager can be used to configure message tracking and logging
BizTalk can store complete copies of incoming and outgoing document instances and
can also capture specific fields of a document

12/14/2001
2001 All Rights Reserved BrainBuzz.com

28



Microsoft BizTalk Server 2000

These options are not automatically enabled, and must be configured when
configuring a channel or a document definition
In the Document Logging page of the Channel Wizard it is possible to set the logging
for inbound and outbound documents, and to decide to log in XML or in native format
To track specific fields of a document, the Track inbound document check box
must be selected, and in the Tracking for Inbound Document, it is possible to
select the Specification fields to track
Note: For step-by-step instructions and detailed information, please visit: MSDN.

For this entire section Building Documents Interchanges and all the Test objectives within
it about Message Manager, Ports, and Channels, there is a very large and substantial
amount of Knowledge Base articles that are associated with it. They are listed here:

Knowledge Base Articles:
Error Message: "An error occurred while opening the target file..." (Q277967)
o If you configure a Messaging Port using the file transport and you do not
specify a filename with the directory path, you may receive an error message
Error Message Occurs for Messaging Manager When You Attempt to Search Existing
Objects (Q276518)
o When you attempt to search for existing objects or create new objects in the
BizTalk Messaging Manager, you may receive an error
Submit Fails for Large Interchanges (Q277973)
o When you submit a large interchange, you may receive errors
Expect Receipt and Generate Receipt Properties in the Channel Wizard (Q276627)
INFO: Changing the Default Settings for BizTalk Server Signatures and Encryption
Algorithms (Q276641)
o The BizTalk Messaging Manager design time application allows users to create
ports and channels that describe how to process business documents
PRB: BizTalk Messaging Manager: Users Cannot Set Encryption Properties for
Transports Using SMIME (Q276771)
o BizTalk Server Messaging Manager allows users to choose SMIME (Secure
Multipurpose Internet Mail Extensions) encryption when they are creating a
port. However, the user cannot adjust the SMIME encryption parameters
Error "The Messaging Port Could Not Be Saved" When You Use the Messaging
Manager (Q276815)
o When you use the BizTalk Messaging Manager to create a new port with a
port name that already exists, you are prompted with an error

12/14/2001
2001 All Rights Reserved BrainBuzz.com

29



Microsoft BizTalk Server 2000

Error Message: The Message Port Could Not be saved (Q276823)
o When you modify a port that you have saved previously, and you specify a
Custom envelope for the port, when you attempt to save the port, you get an
error
PRB: BizTalk Messaging Manager: Cannot Set Encryption for Port to an XLANG
Application (Q276915)
o When you create a BizTalk messaging port to an XLANG application, the
option for data encryption is disabled
PRB: Error 0xC0C0129C: "This Object Cannot Be Saved or Removed" (Q276926)
Cannot Create a Port to an Application When You Use a Non-Default Organization
(Q276947)
Deadlock Issues Occur When You Update a Channel When a Server Is Under Stress
(Q275847)
o When you edit a channel, you may experience deadlock issues with BizTalk
Server while the server is under stress
BUG: Error Occurs When You Send a Document to a BizTalk Messaging Port with an
MSMQ Transport (Q276981)
Reliable Messaging with Message Queuing Under Stress Causes Deadlock (Q279553)
o When you are using Reliable Messaging with Message Queuing, you may
receive an error

Note: There are quite a few articles in the Knowledge Base concerning channels, ports and
message queuing. If you are seriously considering rolling out BizTalk Server 2000 in your
environment, you should visit the knowledge base and get the rest of these articles to help
you troubleshoot problems. (I have about of the KB articles listed here and these are the
most critical.)



12/14/2001
2001 All Rights Reserved BrainBuzz.com

30



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

31


Creating Auxiliary Components for BizTalk Server Solutions
Create a COM+ Component that Implements Custom Transport Logic
Create Application Integration Components (AICs)

Application integration components are COM objects that can be called by the BizTalk
Server state engine
A messaging port can be configured to include the use of an AIC for application
integration. The component is automatically instantiated and passed the requisite
data. The component then determines how to handle communicating this data back
to the application. This can be done using private API calls, invoking other COM
objects, using database writes, and so on
An application integration component can implement either the pipeline model using
the IPipelineComponent interface or the lightweight model using the
IBTSAppIntegration interface
By default, AICs run in the LocalSystem account. If another security context is
required, it can be set programmatically or, if an AIC is installed as a COM+
application, by using the Component Services console

Create Pipeline Components

Pipeline components follows the same model used in Microsoft Site Server Commerce
Edition 3.0 for application integration with the Commerce Interchange pipeline (CIP)
and the Order Processing pipeline (OPP)
A pipeline component must implement the IPipelineComponent interface
When the component is called, the Execute method of the IPipelineComponent
interface is invoked with the data passed to the component. It is in the
implementation of this method that the component does its work

Submit Documents Programmatically

To submit documents programmatically, the Submit or SubmitSync methods of the
IInterchange interface must be used
To call these methods, the application must be able to use COM objects. If an
application is not COM compatible, a receive function must be used

Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

32


When an application calls Submit or SubmitSync, passing the file path can pass
directly in a string buffer or the document. The client application can be run in any
user account
Submit does it work asynchronously, while SubmitSync is synchronous
A synchronous interchange bypasses all queues and executes all the components
required by the messaging port on the calling thread. For synchronous protocols, an
optional response document is returned to the user, if available. This method is valid
only for a single channel match. If the parameters set cause multiple channels to
match, synchronous submission returns an error indicating that multiple channel
matches are not allowed for synchronous submission. This method can be used only
for single document interchanges. If the submission contains multiple documents,
synchronous submission returns an error indicating that multiple document
submissions are not allowed. Note: This method does not support port groups

Administering BizTalk Server Solutions
Monitor and Optimize BizTalk Server Performance
Performance Counters
To monitor BizTalk Server performance, the Microsoft Windows 2000 Performance
tool can be used to look at performance counters
Remember that all the components of a system work together to determine the
health of a system so do not make drastic changes to the system configuration
based on the poor performance of only one counter

BizTalk Server counters are:
Documents
Processed/sec
Indicates how quickly BizTalk Server 2000
is polling documents from its Work queue
and sending them
Documents
Received/sec
Indicates how quickly BizTalk Server is
sending documents to the Work queue
Synchronous
Submissions/sec and
Asynchronous
Submissions/sec
Indicates how quickly the Submit method
and/or the SubmitSync method calls
occur


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

33


A counter is particularly useful to monitor SQL Server:
I/O transactions/sec Indicates how much activity the SQL
server actually performs

There is a set of counters involved in determining Windows 2000 performance, divided in
various groups:

Active Server Pages
These counters are used if the HTTP transport service uses .asp pages
Requests queued Must be close to zero, except at peak periods
Requests/sec Indicates the volume of ASP requests the
HTTP transport services are receiving (if
using ASP)
Request wait time Must be close to zero
Network Segment,
Bytes received per
second/Bytes sent per
second
If this number is close to the capacity of the
connection, and processor and memory use
are moderate, the connection may affect
performance
Process, Inetinfo
instance Private bytes
Monitor this for memory leaks or size
approaching maximum available RAM

Memory
Available bytes Available byes should not stay below 10
MB consistently. If so, a memory spike
would cause paging to disk to start
Page Faults/sec,
Memory: Pages
Input/sec, and
Memory
If Page Reads specify these numbers are
low, the server should be responding to
requests quickly. If they are high, an
increase in the amount of RAM on your
server may be needed


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

34


Physical Disk:
Disk
read/writes/sec
Combined, these two counters should
be significantly under the maximum
capacity for the disk device. To enable
this counter, type diskperf y on the
command prompt. Then, restart the
computer
% Disk time This counter should be well below 100
percent. If it is above this value (and
it can go into the 1000 percent
range), add more physical disks or
move one of the databases to another
server
Current Disk Queue
Length
This counter is the number of requests
outstanding on the disk at the time
the performance data is collected. This
counter should average less than 2 for
good performance
Message Queue
Messages in queue
This number should not get extremely
large (over 50KB) because it will
cause excessive memory use on the
Message Queue server and degrade
the performance of the entire system

System:
Processor Queue Length This counter displays the number of
threads waiting to be executed in the
queue that is shared by all processors
on the system. If this counter has a
sustained value of two or more
threads, the processor is degrading
the performance of the entire system
Context switches/sec If this is a high number on BizTalk
Server, it could be because send and
receive functions are running on the
same server. If this is the case,
consider separating the send and
receive functions to separate servers
Processor, %Processor
Time
If this counter's value is high while the
network adapter card and disk I/O
remain well below capacity, the

Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

35


processor is affecting performance
Web Service, Get or
post requests/sec
Indicates the volume of files being
received through the HTTP get/post
methods


Monitor BizTalk Server by using Document Tracking and Activity
(DTA)
BizTalk Document Tracking
BizTalk Document Tracking can be installed from the BizTalk CD or over the internet,
and is a stand-alone Web application that can be used to view interchanges and
documents that were configured to be tracked, but can also monitor XLANG Schedule
Events.
Its possible to configure query parameters in the Date Range, Source Selection,
Destination Selection, and Document Type Selection areas of the screen.
Its also possible to configure parameters in the Advanced Query area to find specific
information or custom search fields.
The Sort Control area is used to specify the sort order on the Query Results page.
To start the query, press the Query button on the main page, and then the Query
Results page appears. If there are records that match query parameters, interchange
records appear in a list
Monitoring XLANG Schedule Events is not automatically enabled when BizTalk Server
2000 is installed. There are a list of steps to enable the feature:
o Register the sample dynamic-link library (.DLL) file, WorkFlowAudit.dll
o This sample file is in the \Program Files\Microsoft BizTalk Server\SDK\XLANG
Samples\WorkFlowAudit\bin folder
o Run the WorkFlowAuditClient.exe application, to activate WorkFlowAudit.dll
o The sample application is in the \Program Files\Microsoft BizTalk
Server\SDK\XLANG Samples\WorkFlowAuditClient folder
o Click the Start button to initiate the logging of action events related to an
XLANG schedule in the Tracking database
For additional information, the Readme.txt can be found in the \Program
Files\Microsoft BizTalk Server\SDK\XLANG Samples\WorkFlowAudit\Docs folder


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

36


Optimize BizTalk Server for receive and submit processing.
To achieve optimal performance and scalability, use asynchronous communication
because it is highly scalable and provides a high-level of throughput
Synchronous communication calls provide a near-immediate response to the caller
under a high volume of transactions because each SubmitSync call runs under a
separate thread. However, if there are many calls at once, this leads to many
threads running on a single server thereby degrading the overall performance of
BizTalk Server
Remember that using Self-routing documents may degrade the performance of
BizTalk Server
Its possible to increase the performance of BizTalk Orchestration Services, changing
the ADO threading model from "Apartment threaded" to "Both". To do it, browse to
Program Files\Common Files\System\ado, and then double-click adofre15.reg. In the
confirmation dialog box, click yes, and then click OK. This modification may affect
other applications that use ADO

In BizTalk Server Administration, it's possible to set some properties in the <Server>
Properties dialog box to improve performance:
Create multiple
instances of receive
functions
This will enable BizTalk Server to poll
multiple receive functions for documents
that are processed. To balance the load of
documents across several computers,
locate the receive functions on separate
computers. Each polling location must be
unique and must have a separate receive
function.
To avoid overloading any individual
receive function, the business application
that sends documents must evenly
distribute the documents to all the polling
locations
Maximum number of
receive function
threads allowed
Setting this too low can cause a slow
down in BizTalk Server because it uses
I/O completion ports.
Setting this too high should not have
serious effects, but it might cause
performance degradation. The
recommended value is 4

Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

37



Maximum number of
worker threads
allowed
The default value is 4.
The recommended value is from 10 to 16,
depending on the deployment

Knowledge Base Article:
FIX: BizTalk Server Problems with Server Performance, Event Sequence, and
Marshalling (Q290619)
o When BizTalk Server is under stress, you may encounter problems with
server performance, event sequence, and user event marshalling
o You may also receive Access Violations

Monitor BizTalk Orchestration Services by using the XLANG Event
Monitor

XLANG Event Monitor
XLANG Event Monitor is used to monitor XLANG schedule events, and to see the
progress of the schedule instances
Its possible to monitor the default XLANG Scheduler application or the custom COM+
applications that can be created to host XLANG schedules. XLANG Event Monitor can
subscribe to all events published by the host applications on any number of local or
distributed computers. XLANG Event Monitor can also store these events to a file for
later analysis
XLANG Event Monitor can be found in \Program Files\Microsoft BizTalk
Server\SDK\XLANG Tools, with its associated Readme.htm


Microsoft BizTalk Server 2000

Figure 10: XLANG Event Monitor

Also the Windows 2000 Event Viewer can be used to monitor those events, but requires a
filter to be applied to only display the interesting events or relation to BizTalk
Note: For step-by-step instructions and detailed information, please visit: MSDN.

Knowledge Base Articles:
Event IDs 12322, 12332, and 12308 Occur When You Use XLANG Scheduler
(Q281177)
o When you use an XLANG Scheduler that uses custom COM+ components and
transactions, the Event Viewer may log many events as seen in Event IDs

BizTalk Server Administration
Administering BizTalk with the BizTalk Server Administration MMC
BizTalk Server Administration can be found in the BizTalk Server group on the start
menu.
Its a graphical administration tool based on the Microsoft Management Console
(MMC)

12/14/2001
2001 All Rights Reserved BrainBuzz.com

38



Microsoft BizTalk Server 2000

Servers are grouped and displayed in server groups. Each server group configured in
BizTalk Server is displayed in a separate subfolder and consists of queues and
receive functions for that group, as well as the names of servers in the group.
Additional information about every item is available when the item is expanded.
From the Server Administration MMC it is possible to:
o Add and to manage servers installed with Microsoft BizTalk Server 2000 in
server groups.
o Configure server group properties, such as the location for the Shared Queue
and Tracking databases.
o Configure and manage receive functions
o View and manage queues

Figure 11: BizTalk Server Administration MMC

Note: For step-by-step instructions and detailed information, please visit: MSDN.

12/14/2001
2001 All Rights Reserved BrainBuzz.com

39



Microsoft BizTalk Server 2000


Knowledge Base Articles:

PRB: BizTalk Server Administration MMC Snap-in Error "Disk Is Full" (Q275815)
o When the user tries to start the BizTalk Server Administration MMC Snap-in, if
the installation drive is full, the user may receive an error
How to Delete a BizTalk Server from a BizTalk Server Group with Receive Functions
(Q275822)
o When you attempt to delete a BizTalk Server from the BizTalk Server Group
in the BizTalk Server Administration Microsoft Management Console (MMC)
snap-in, you may receive an error

Monitor BizTalk Server queues
Monitoring BizTalk Server Queues
BizTalk Server queues can be monitored and administered from the Queues field of
the BizTalk Server Administration program.
Its possible to:
o Move documents to the Suspended queue
o View error descriptions
o View interchanges
o View documents
o Resubmit documents
o Delete documents

Note: For step-by-step instructions and detailed information, please visit: MSDN.

Windows Management Instrumentation (WMI)
WMI or Windows Management Instrumentation
Windows Management Instrumentation (WMI) is a data-management layer that is
included in Microsoft Windows 2000.
It allows programmatically reading and modifying configuration options of all the OS
settings, and of all the settings of every application that has a WMI provider.

12/14/2001
2001 All Rights Reserved BrainBuzz.com

40



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

41


Microsoft BizTalk Server 2000 uses the WMI layer to encapsulate administrative
functions. BizTalk Server Administration, for example, uses the BizTalk Server WMI
provider to perform every operation
In BizTalk Server 2000, the WMI provider uses a Microsoft SQL Server database to
store administrative objects. WMI supports a uniform scripting application
programming interface (API) that gives applications and scripts access to the WMI
provider on a local computer or a remote computer
To access the WMI database layer programmatically, the
InterchangeProvSchema.mof file found in the \Program Files\Microsoft BizTalk
Server\Setup folder must be used. This file contains the WMI classes corresponding
to the Administration objects.
Note: For step-by-step instructions and detailed information, please visit: MSDN.

Creating Schemas and Transformations
Create, import and modify schemas by using BizTalk Editor
Creating, Importing and Modifying Schemas
To create a new Schema, you can use the New command on the File menu
A new schema can be created for:
Blank
Specification
Flat files can be created by selecting Blank
Specification
XML Based XML based specifications can be created for use
with a general XML document
X.12 and Edifact Or for existing specifications, like X12 or
EDIFACT, you can select via selecting the
appropriate options

To import a schema, the Import command on the Tools menu is used
Its possible to import a Document Type Definition (DTD) an XDR (XML Data
Reduced) Schema or a Well-Formed XML Instance
BizTalk Editor then creates a specification based on the structure of the imported file.
Its then necessary to assign all record and field property values
Its possible to modify schemas by adding new records, new fields and to specify
properties for both records and fields
When a schema is ready it could be saved for later use, exported in an XDR file or
stored under WebDAV (in a WebDAV repository)
A schema can be validated using Validate Specification command on the Tools menu

Microsoft BizTalk Server 2000


Figure 12: BizTalk Editor


Note: For step-by-step instructions and detailed information, please visit:
Manage Records and Fields
Specify Properties for Records and Fields
Understanding Specifications


12/14/2001
2001 All Rights Reserved BrainBuzz.com

42



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

43


You must understand Specifications for the exam. It is important to know how to create new
ones, or import/export via the editor. Also know WebDAV and how to use the WebDAV
repository

Knowledge Base Articles on the Editor, Specifications, and Schemas:
Schemas from http://www.biztalk.org Generate Warnings in BizTalk Editor
(Q276676)
BizTalk Editor Error Incorrectly Lists "Mixed" As a Valid Content Type (Q276808)
o When you open a document specification with the BizTalk Editor that contains
an invalid content type, you receive a dialog box with a message
BUG: BizTalk Editor: Custom Date/Time Format Property Does Not Accept a Period
as a Date Separator (Q276832)
o When you attempt to set the date format in the Custom Date/Time Format
property in the BizTalk Editor, you cannot use a period (.) as a date
separator
PRB: Cannot Add, Edit, or Delete Invalid Character Ranges for Non-XML
Specifications in BizTalk Server 2000 (Q276834)
BizTalk Editor: A Field Element or Record with the Same Name Already Exists in the
Tree (Q276979)
o When you use the BizTalk Editor to create records and fields for a file
specification, you may receive an error

Knowledge Base Articles on WebDAV:
WebDAV Retrieve/Store Dialog Box Does Not Accommodate Tree View of WebDAV
Directories (Q275757)
WebDAV Dialog Box Does Not Memorize Icon View Setting (Q275760)
Saving a Document Specification to a Remote WebDAV Repository Fails (Q275817)
o When you attempt to save a document specification to a WebDAV repository
on a remote computer, you may receive an error message
Note: You need to understand how WebDAV works, with IIS and the problems that you can
have if not configured properly (like not being able to get into the repository). This is a
common problem and most of it related to configuration mistakes. Please review it for the
exam.


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

44


Create Schema Mapping by using the BizTalk Mapper
BizTalk Mapper Tool
BizTalk Mapper is a tool that allows creating a correspondence (a map) between the
records and fields in two different specification formats, using the eXtensible
Stylesheet Language (XSL) component of the Microsoft XML Parser version 3.0
BizTalk Mapper uses links and functoids (discussed below) to create the map
Functoids are used to transform records and fields
Links connects records and fields from the source document to functoids and to
records and fields of the destination document
BizTalk Mapper enables the open exchange of specifications in an Extensible Markup
Language (XML) data format.
BizTalk Mapper can open only specifications that have been saved in BizTalk Editor
If there is the need to translate two generic XML files, they must be imported into
BizTalk Editor and saved as specifications


Microsoft BizTalk Server 2000

Figure 13: BizTalk Mapper Tool



Functoids and Validation

Functiods and Functions
There are a large number of functoids in the functoids palette. Make sure you know
how to use the functiods and what they do
o Functiods aid you in mapping one specification to another within the Mapper.
The Functiod adds Functions from one map to another
o For Instance, you may want to add one value to another between maps. You
can open functoid Palette and drop the mathematical Addition Functiod to
the map grid within the BizTalk Mapper and simply connect the right side

12/14/2001
2001 All Rights Reserved BrainBuzz.com

45



Microsoft BizTalk Server 2000

record to the left side record via the Addition functoid. Now, a mathematical
function will occur between the two records.
Functiods are very useful as they are predefined functions to help you do basic
programming, and you can also create your own with the Scripting Functiod
How do they work?
o The BizTalk Mapper will support complex structural transformations from
records and fields in the source specification tree to records and fields in the
destination specification tree
o Functoids perform calculations by using predefined formulas and specific
values, called arguments
o You can perform such functions by selecting a functoid from the functoid
palette, dragging it to the mapping grid, and linking it to elements in the
source specification and destination specification trees
Functiods are also highly useful as they can be used via a drag and
drop interface as seed in Figure 13
Very Important: To create a link between a functoid and a record, you
must enable the Allow record content links property. To do this, on
the Tools menu => click Options => in the BizTalk Mapper Options
dialog box, on the General tab => select the Allow record content
links check box => OK

Here are the listed Functions and Functiods that can be found in the Functiod Palette as
seen above in Figure 13 within the BizTalk Mapper Tool:

String Functiods: (String functoids)
These functoids manipulate data strings by using string functions

Icon Name Function

String Find Returns the position in a string at
which another specified string begins

String Left Returns a specified number of
characters from a text item, starting
with the leftmost character

Lowercase Converts a text item to lowercase
characters

12/14/2001
2001 All Rights Reserved BrainBuzz.com

46



Microsoft BizTalk Server 2000



String Right Its like Left but starts from the
rightmost character

String Length Returns the length of a string

String Extract Extracts a string specified by the
start and end positions of a super
string

Concatenate Concatenates a series of input
strings

String Left Trim Removes leading spaces from a text
item

String Right Trim Removes trailing spaces from a text
item

Uppercase Converts a text item to uppercase
characters


Mathematical Functiods: (Mathematical functoids)
These functoids perform calculations by using specific values, called arguments, in a
particular order, or structure

Icon Name Function

Absolute Value Returns the absolute value of a
number

Integer Returns the integer portion of a
number

Maximum Value Returns the maximum value from a
series of numeric values

Minimum Value Returns the minimum value from a
series of numeric values

Modulo Returns the remainder after the
number is divided by an integer

Round Rounds a number to a specified
number of decimal places or to a
whole number if no decimal places
are specified

12/14/2001
2001 All Rights Reserved BrainBuzz.com

47



Microsoft BizTalk Server 2000


Square Root Returns the square root of a number

Addition Calculates the sum of a series of
numbers

Subtraction Subtracts one number from another
number

Multiplication Multiplies one number by another
number

Division Divides one number by another
number


Logical Functiods: (Logical functoids)
These functoids perform specific logical tests
The output of a logical functoid can also be accepted as input for other functoids in a
map

Icon Name Function

Greater Than Returns "true" if the first
parameter is greater than the
second parameter

Greater Than or
Equal To
Returns "true" if the first
parameter is greater than or
equal to the second parameter

Less Than Returns "true" if the first
parameter is less than the
second parameter

Less Than or
Equal To
Returns "true" if the first
parameter is less than or equal
to the second parameter

Equal Returns "true" if the first
parameter is equal to the
second parameter

Not Equal Returns "true" if the first
parameter is not equal to the
second parameter

12/14/2001
2001 All Rights Reserved BrainBuzz.com

48



Microsoft BizTalk Server 2000



Logical String Returns "true" if the parameter
is a string value

Logical Date Returns "true" if the parameter
is a date value

Logical Numeric Returns "true" if the parameter
is a numeric value

Logical OR Returns the logical OR of
parameters

Logical AND Returns the logical AND of
parameters


Date and Time Functiods: (Date and time functoids)
These functoids manipulate date and time data or add current date, time, or date
and time data to a record or field in the destination specification

Icon Name Function

Add Days Adds a specified number of days to a
date

Date Returns the current date

Time Returns the current time

Date and Time Returns the date and time

Conversion Functiods: (Conversion functoids)
These functoids perform functions that return a value given a value based on
conversion

Icon Name Function

ASCII from
Character
Returns an ASCII value when given a
character

Character from
ASCII
Returns a character when given an
ASCII value

12/14/2001
2001 All Rights Reserved BrainBuzz.com

49



Microsoft BizTalk Server 2000


Hexadecimal Returns a hexadecimal value when
given a decimal number

Octal Returns an octal value when given a
decimal number
Scientific Functiods: (Scientific functoids)
These functoids convert a numeric value to a scientific value
Not frequently used

Icon Name Function

Arc Tangent Returns the arc tangent of a number

Cosine Returns the cosine of a number

Sine Returns the sine of a number

Tangent Returns the tangent of a number

Natural
Exponential
Function
Returns e raised to a specified power

Natural
Logarithm
Returns the logarithm (base e) of a
value

10^X Returns 10 raised to a specified power

Common
Logarithm
Returns the logarithm (base 10) of a
value

X^Y Returns a value raised to a specified
power

Base-Specified
Logarithm
Returns the logarithm (base-specified)
of a value




12/14/2001
2001 All Rights Reserved BrainBuzz.com

50



Microsoft BizTalk Server 2000

Cumulative Functiods: (Cumulative functoids)
These functoids return the sum, average, or minimum or maximum input of a record

Icon Name Function

Cumulative Sum Sums all values for the connected
field by iterating over its parent
record

Cumulative
Average
Calculates the average of all values
for the connected field by iterating
over its parent record

Cumulative
Minimum
Returns the minimum of input
spanning over the parent record

Cumulative
Maximum
Returns the maximum of input
spanning over the parent record

Cumulative
String
Returns the concatenated string of
the string values for the connected
field by iterating over its parent
record


Database Functoids: (Database functoids)
These functoids extract data from a database
Very Common

Icon Name Function

Database Lookup Searches a database for a specific
value, retrieves the record that
contains the value, and stores it as
an ADO record set

Value Extractor Returns a value from a specific
column in an ADO record set that
has been retrieved by the Database
Lookup functoid

Error Return Returns the error string, if any,
returned by ODBC when using the
Database Lookup functoid

12/14/2001
2001 All Rights Reserved BrainBuzz.com

51



Microsoft BizTalk Server 2000

Advanced Functiods: (Advanced functoids)
This tab has a functoid that can use custom Microsoft Visual Basic script, functoids
for value mapping, and functoids for managing and extracting information from
records
You can also create your own custom functoids:
o For a sample of a custom functoid, go to => Program Files\Microsoft BizTalk
Server\SDK\Messaging Samples\SampleFunctoid folder
o This can be found on a computer with either a complete installation of
BizTalk Server or a custom installation of BizTalk Server that includes
Messaging samples

Icon Name Function

Record Count Returns a total count of the records
found in the instance

Index Returns the value of a record or a field
at a specified index

Iteration Returns the iteration number (in a loop)
of the source record

Value
Mapping
Returns the value of the second
parameter if the value of the first
parameter is "true"

Value
Mapping
(Flattening)
Returns the value of the second
parameter if the value of the first
parameter is "true", and flattens the
source document hierarchy

Looping Creates multiple output records by
iterating over each input record

Scripting Custom Visual Basic script

Note on Scripting:
If there are multiple functions within a Scripting functoid, the first function is the
main or primary function
This function must have parameters set if there are links into the functoid


12/14/2001
2001 All Rights Reserved BrainBuzz.com

52



Microsoft BizTalk Server 2000

Last Notes on Functiods:
You do not have to be the master of using Functoids for the exam, but you need to
know some of them, how they work and how to use them
Creating a Scripted Functiod is high on the list of must know. Pay careful attention
to these for real-life application

Knowledge Base Articles on Functiods and the Mapper Tool:
Tool Tips Are Not Displayed for Functoids in the BizTalk Mapper Grid (Q276619)
o When you move your mouse pointer over a functoid in the BizTalk Mapper
grid area, tool tips are not displayed
PRB: Output Data Contains Empty Records or Fields When You Use an XSLT Map with
BizTalk Server 2000 (Q276689)
o When you use an XSLT map with BizTalk Server 2000, the output data may
contain empty records or fields. This can cause validation against the
destination schema to fail
PRB: BizTalk Mapper Outputs Error When There Is No Output Data (Q276780)
FIX: Icons Appear Black in BizTalk Mapper Functoid Palette After You Change Display
Resolution (Q297552)
o After you change the color depth for the display properties of your BizTalk
Server computer, the icons in the functoid palette of the BizTalk Mapper may
appear black
Mapper Multiply Functoid Truncates Trailing Zeros (Q276820)
o The multiply functoid used in the BizTalk Mapper does not return trailing zeros
after a decimal point
Unused Functoids Are Saved as Part of the XSL Map (Q275744)
o When you create an XSL map in the BizTalk Mapper, you can add functoids
without linking them to anything
o These unused functoids are saved as part of the XSL map, even though they
appear to be unused
o This behavior is by design
Cannot Use Keyboard to Select Color in BizTalk Mapper (Q275793)
Document Fails Validation on Date Field after Being Mapped Using Database Value
Extractor Functoid (Q278737)
o When you use the Database Value Extractor functoid in a map to extract a
date field, your document may fail validation against the outbound document
definition

12/14/2001
2001 All Rights Reserved BrainBuzz.com

53



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

54


o BizTalk Server may log a validation error in the event log
BUG: BizTalk Mapper Generates Incorrect Output When You Use the Index Functoid
(Q275837)
o When you use the Index functoid in the BizTalk Mapper, the resulting XML
output may be missing data or may reflect data that is not correctly
generated

Implementing Business Processes by using BizTalk
Orchestration Designer
Using the BizTalk Orchestration Designer
BizTalk Orchestration Designer is used to graphically design XLANG schedules.
XLANG is an XML-based language used to describe business processes
Since XLANG is XML-based, XLANG Schedules must meet some XML constraints, for
example on the name of the nodes
BizTalk Orchestration Designer enables you to create XLANG schedule drawings that
include:
o A visual description of a business process that is similar to a workflow
diagram or an interaction diagram
o A visual representation of configurable ports, which is the implementation
aspect of an XLANG schedule drawing. Ports are named locations, and
messages represent the data sent or received between actions and ports
o A visual representation of the connections between shapes
Flowchart shapes can be connected to represent process flow in a
business process
Actions can be connected to ports to represent the flow of communication in a
business process
A visual representation of the flow between specified message fields, which
determines the relationship between a message field on one message and another
message field on a different message


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

55


There are four design pages that are accessible within BizTalk Orchestration Designer:
Page: Function:
Business Process On this page Flowchart shapes and
Implementation shapes are used to
define a business process
Data On this page Communication shapes
are used to control the flow of data
between message fields
On Failure of Transaction On this page Flowchart shapes and
Implementation shapes are used to
design an alternate business process
for a failed transaction
Compensation for
Transaction
On this page Flowchart shapes and
Implementation shapes are used to
design an undo process for a
committed nested transaction

Note: For step-by-step instructions and detailed information, please visit: MSDN.


Microsoft BizTalk Server 2000

Figure 14: BizTalk Orchestration Designer (Visio)



Design the Business Process by using Flowchart Shapes
There are eight shapes in the Flowchart stencil
These shapes are used to describe the business process
Know how to use these shapes and when to implement them


12/14/2001
2001 All Rights Reserved BrainBuzz.com

56



Microsoft BizTalk Server 2000

Flowchart Shapes
Shape name Description
Begin

Begin shapes are created automatically on each
Business Process, Compensation for Transaction
and On Failure of Transaction.
The Begin shape is automatically drawn and
cannot be deleted. It's impossible to create
additional Begin shapes because they're not
available on the Flowchart stencil.
Action

The Action shape receives or sends a message
from or to a port.
Actions can be synchronous or asynchronous.
Decision

The Decision shape evaluates one or more rules
sequentially.
It has one inbound flow, and one or more
outbound flows. An outbound flow is selected if
the associated rule evaluates to TRUE.
While

The While shape contains one rule and one flow.
While the rule evaluates to TRUE, the flow is
repeated. If the rule evaluates to FALSE the
Continue flow is selected.
Fork

The Fork shape is used to perform concurrent
actions in a business process.
From one inbound flow, 64 outbound flows can
be created.
All the outbound flows from a Fork must
converge to a single Join.
Join

Join is used to synchronize concurrent flows.
AND and OR operators can be used to determine
how the flows must be synchronized:
- AND synchronizes all the flows before going on
- OR allows the first flow that arrives to continue,
letting the other flows continue
End

End is used to complete one flow. There can be
multiple End shapes if the drawing includes
Decision, While or Fork shapes.


12/14/2001
2001 All Rights Reserved BrainBuzz.com

57



Microsoft BizTalk Server 2000

Transaction

Transaction is used to create three types of
transactions:
- Short-lived
- Long-running
- Long-running with timeout
Transactions cannot contain End shapes.
Short-lived transactions cannot contain nested
transaction, and have a Retry count property
that determines how many times the transaction
can be retried if it fails.
Long-running transactions can contain nested
transactions.
Transactions can have a Compensation for
Transaction page or an On Failure of Transaction
page, where it's possible to define the error-
handling process specific to the transaction.
Abort

Abort terminates execution within a transaction.
The error-handling page for the transaction is
invoked, or the transaction is retried, depending
on the settings.

Note: For step-by-step instructions and detailed information, please visit: MSDN.

Bind Business Process Implementation Shapes
o There are four shapes in the Implementation stencil
They are used to describe the implementation technologies used to implement a port
in a business process
Make sure you know these shapes


12/14/2001
2001 All Rights Reserved BrainBuzz.com

58



Microsoft BizTalk Server 2000

Business Process Implementation Shapes
Shape name Description
COM Component

This shape is used to implement a port
by calling a method on a COM
Component.
Script Component

This shape is used to implement a port
by executing a script.
BizTalk Messaging

This shape is used to send or receive
BizTalk messages.
Message Queuing

This shape is used to send or receive
Message Queuing Services messages.

Note: For step-by-step instructions and detailed information, please visit: MSDN.

Create Transactional Business Processes
A transaction is a discrete activity in a computer system that has the four ACID attributes.
ACID is an acronym that is made up of the following properties:

A.C.I.D.
Atomicity A transaction represents an atomic unit of work.
Either all modifications within a transaction are
performed, or none of the modifications are
performed
Consistency When committed, a transaction must preserve the
integrity of the data within the system. If a
transaction performs a data modification on a
database that was internally consistent before the
transaction started, the database must still be
internally consistent when the transaction is
committed. Ensuring this property is largely the
responsibility of the application developer
Isolation Modifications made by concurrent transactions
must be isolated from the modifications made by
other concurrent transactions. Isolated

12/14/2001
2001 All Rights Reserved BrainBuzz.com

59



Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

60


transactions that run concurrently will perform
modifications that preserve internal database
consistency exactly as they would if the
transactions were run serially
Durability After a transaction has committed, all
modifications are permanently in place in the
system. The modifications persist even if a system
failure occurs



Create long-running and short-lived transactions
Transactions:
Short Lived
o Collections of grouped actions that are performed as a single logical unit of
work and have all the four ACID attributes
o MSDN info: Short-lived transactions
Long-Running
o Sacrifice isolation for the ability to handle operations that require an extended
period of time to complete
o MSDN info: Long-running transactions
The data within a long-running transaction are not locked; other processes or
applications can modify the data
If your data must be consistent, you should use ACID transactions exclusively, but
remember that in a long latency environment ACID transactions will cause severe
scalability problems
Typically, a long-running transaction will contain several nested short-lived
transactions


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

61


Transaction types are denoted by the following colors:
Blue This color denotes timed transactions
Beige This color denotes long-running transactions
Gray This color denotes short-lived, DTC-style
transactions

Note: For step-by-step instructions and detailed information, please visit: MSDN.

Diagnose and resolve transactional and component errors
Errors and Resolution
If there is an error in a transaction, an abort event occurs. An abort event can come
from one of several places:
o Encountering the Abort shape within the process flow
o An HRESULT failure that is specified to cause an abort in a port binding
o Any binding technology can, at a system level, introduce a failure event that
aborts the transaction. For example, the Message Queuing might fail to put a
message on a queue
o The XLANG Scheduler Engine may encounter an error that causes it to abort a
transaction within a given instance. For example, there may be a DTC error
o Pausing a schedule may require all transactions within that schedule to abort
o A Timeout within the transaction properties
When an abort occurs, a transaction may retry from the beginning, depending on the
value set in the Retry count property of the transaction group. If, after a transaction
has retried the specified number of times, it continues to fail, the On Failure of
Transaction business process will be called
The On Failure of Transaction code does not have to undo any work within the
transaction. If the ports are bound to transactional resources, the Distributed
Transaction Coordinator will handle the rollback of all of the enlisted actions within
the transaction. Non-transactional resources will not be rolled back. If the
transaction is nested within an outer transaction, and if this nested transaction has
already committed, the business process sequence will flow to the Compensation for
Transaction business process for the nested transaction. The Compensation for
Transaction business process is described on the Compensation for Transaction page.
This alternate business process must contain actions that can be performed to undo
the work within the nested transaction


Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

62


Note: For step-by-step instructions and detailed information, please visit: MSDN.

Create Correlations back to long-running business processes
When the Compensation for Transaction or the On Failure of Transaction code has
completed, the business process sequence will flow out of the bottom of the Transaction
shape on the Business Process page. Actions within the business process sequence that
occur after a transaction do not receive an explicit indication of whether the transaction
completed or aborted. To enable an explicit indication, you can set a flag within a message
field on either the On Failure of Transaction page, or the Compensation for Transaction
page.

Map the data flow between messages.
Every XLANG schedule drawing has a Data page. There is:
A message shape for every message
One Constants message
A Port References message containing a port field for each port
Connections showing the flow of data between the message fields
A Message is a set of uniquely named fields, each containing one data item of a specific
data type. Every message is displayed as a table. Each table displays the name of the
message and a listing of field names and their corresponding data types. System fields that
do not require data flow are displayed with a yellow background. User fields, and system
fields that do require data flow, are displayed with a white background.

Configure orchestration ports for communication between business
processes and transport bindings
When an action is connected to a port, a Communication Wizard will open.
It's possible to choose between synchronous and asynchronous communications.
Synchronous communication can be used to connect to a COM Component or to a
Scripting Component via the Method Communication Wizard
It's possible to Initiate a synchronous method call where the XLANG Scheduler
Engine sends a method call to a component, waits for a response from the
component, and then receives a response, or to Wait for a synchronous method
call where the XLANG Scheduler Engine waits for another application to initiate the
method call. In this case it is possible to configure the time that the scheduler has to
wait before a message arrives.

Microsoft BizTalk Server 2000


12/14/2001
2001 All Rights Reserved BrainBuzz.com

63


For both the options, it possible to create a new message or to Add a reference
to an existing synchronous message pair
The name of the message is automatically determined by the method that is selected
on the next page of the wizard. The data flow for a new message must be connected
to other messages on the Data page
On the Message Specification Information page, in the Methods list, it's possible
to click only one method
Selecting a method defines the messages for the communication flow. The IN and
OUT parameters are automatically determined by the parameter requirements of the
method that was chosen. Both parameter lists contain the name and data type of the
parameter
Asynchronous communication can be used to connect to a Message Queuing, a
BizTalk Messaging implementation, or to create an asynchronous communication flow
to an unbound port via the XML Communication Wizard
It's possible to Send or to Receive a message asynchronously
Also in this case with the Receive message, it's possible to set the time that the
scheduler has to wait
On the Message Information page, it's possible to Create a new message or to
Add a reference to an existing message
It's possible to send or receive XML messages or string messages
If XML messages are selected, it's possible to select the specification of the message
If the specification doesn't exist, it can be created. This action opens BizTalk Editor,
which enables to select a specification and to modify it as needed for use with this
message, or to create a new specification
Note: For step-by-step instructions and detailed information, please visit: MSDN.

Knowledge Base Articles on the Orchestration Designer and XLANG:
All Shapes in a Transaction Are Deleted (Q277718)
"Visio Has Finished Searching the Page" Error Message Occurs in BizTalk
Orchestration Designer (Q277720)
Cannot Copy or Cut Implementation Shapes or Ports in BizTalk Orchestration
Designer (Q277755)
Compile Percentage Jumps to Done for BizTalk Orchestration Drawing (Q276448)
o When you compile a drawing in BizTalk Orchestration Designer, the estimated
percent that is complete may jump from a very low percentage to Done
BizTalk Orchestration Designer Fails to AutoSave Drawings (Q276450)

Microsoft BizTalk Server 2000

ALT + ENTER Key Combination Does Not Display the Properties for Shapes in
Orchestration Designer (Q276456)
o The ALT + ENTER key combination does not display the properties for
shapes in the BizTalk Orchestration Designer
Memory Leak Occurs When You Open and Close a New Drawing in Orchestration
Designer (Q277961)
o When you open and close new drawings in the BizTalk Orchestration
Designer, a memory leak may occur until you close the Orchestration
Designer
Changing a Rule in an Orchestration Drawing May Affect Rules in Other Parts of the
Drawing (Q276512)
BizTalk Orchestration Designer Does Not Support Drag-and-Drop Method (Q276514)
o When you attempt to drag an Orchestration Drawing (*.skv) into an open
window in the BizTalk Orchestration Designer, you may receive an error

Knowledge Base Articles on XLANG:
Missing XLANG Tab on XLANG Scheduler COM+ Component (Q277754)
o Terminal Service Client session issues
Catalog Error When You Shut Down XLANG Scheduler COM+ Application (Q277847)
o When you attempt to shut down or start the XLANG Scheduler COM+
application, you may receive an error message

Special thanks to
Lorenzo Barbieri for the original material

and to Robert J. Shimonski
for performing a technical edit.
Please visit Roberts site at
http://www.rsnetworks.net/




12/14/2001
2001 All Rights Reserved BrainBuzz.com

64

Potrebbero piacerti anche