Learning BizTalk Server 2000: Lesson 1

Igor Leybovich and Scott Woodgate
Microsoft Corporation

May 2001

Summary: The first in a series of 7 articles designed to show you how Microsoft BizTalk Server 2000 can help your business exchange a variety of documents with business partners, as well as integrate internal business processes and applications. In this lesson, you will learn the fundamental concepts surrounding BizTalk Server, and the tools and processes required to start building solutions with BizTalk Server. (8 printed pages)

Download LearnBizTalk.exe.

Note
   
You will need to install Microsoft® BizTalk Server™ 2000 in order to complete this lesson. Before you install Microsoft BizTalk Server, make sure you have read the Readme.htm and Installation Guide.htm documents, paying particular attention to the following important prerequisites:
  • You must have a computer running Microsoft Windows® 2000 with Service Pack 1 or above (Professional or Server both work), including IIS and MSMQ services, and an account with administrative rights on that computer.
  • You must have Microsoft SQL Server™ 7.0 with Service Pack 2 or above (you can install SQL Server Desktop Edition if you choose to run everything on a single workstation running Windows 2000 Professional) and password for the "sa" account. If you use SQL Server 2000, you must configure it for "mixed" security mode in the install wizards that is not the default.
  • Microsoft Visio® 2000 SR1 Standard or above must be installed on the computer where you are installing BizTalk Server.
  • In Internet Services Manager, turn off the Enable authoring option on the Server Extensions tab of the Default Web Site.
Also, in order to execute the scripts for these lessons, you need to install the MSMQ component of Windows 2000.

Contents

Introduction
What is BizTalk Server?
Why Use BizTalk Server?
Do You Speak My Language?
Document Exchange Concepts
Install BizTalk Server
Let's Do Business
Run the Scenario

Introduction

Welcome to the "Learning Microsoft BizTalk Server" lesson series!

Over the course of the following lessons, you will learn how Microsoft BizTalk Server 2000 can help your business exchange a variety of documents with business partners, as well as integrate internal business processes and applications.

What Is BizTalk Server?

Microsoft BizTalk Server 2000 provides a powerful development and execution environment that orchestrates business processes, both within and between businesses. BizTalk Server can handle business transactions that run as long as weeks or months.

BizTalk Server 2000 features include the ability to define business document specifications and how these documents have to be transformed when passed between applications, and the ability to monitor and log server activity.

The server provides a standard gateway for sending and receiving documents across the Internet, as well as providing a range of services that ensures data integrity, delivery, and security.

Why Use BizTalk Server?

You might ask yourself: "Why should I use BizTalk Server over any other solution?" In today's world of fast-changing technologies and standards, it is imperative to ensure that a solution you build is based on commonly accepted protocols and document formats. It is also important to know that your solution will enable integration with the widest variety of business partners and applications, will work securely over the Internet, and will scale as your business needs grow. As you will soon discover, BizTalk Server addresses these criteria very effectively.

The business environment in the 21st century is very different from what it used to be just a few years ago. Today's organizations embrace the global marketplace, and this dictates a need to be able to efficiently operate 24 hours a day, 7 days a week. The customers are now more sophisticated than ever, and they want to stay informed in real time, which translates into an accelerated pace of business and decision-making processes. Finally, business relationships have become highly dynamic, and new customers and partners expect businesses to adapt quickly.

The technical and operational challenges abound as well. There's a need to support multiple applications on a variety of platforms, and to integrate with business partners using the Internet, extranets, B2B exchanges, and other resources. At the same time, existing information technology investments need to be preserved and leveraged, which requires having an ability to support legacy systems and EDI (electronic data interchange) and X12 networks. And perhaps most importantly, to effectively compete in today's market, you need to be able to build new solutions on "Internet time," utilizing open Internet standards and technology to assure maximum interoperability.

Microsoft BizTalk Server uses XML internally to "describe" your business documents, and it uses such standard Internet protocols as HTTP and SMTP to deliver these documents to their destinations, thus allowing you to interoperate with various applications running in any environment as long as those applications support Internet standards. You can send documents to BizTalk Server as XML, EDI or as flat files.

So why is XML important, so important, in fact, that the BizTalk Server team chose this language to represent internal documents and processes?

Do You Speak My Language?

To interchange documents in an environment where neither side wants to depend on the technology the other side is using, businesses need to choose a lingua franca in which to write these documents. This common language is exactly what XML has become lately.

XML, which stands for eXtensible Markup Language, is a flexible way to create common information formats and share both the format and the data on the Web. The document that is written in XML can be viewed and edited with any text editor, and it is usually pretty simple to understand. In the example below, a company called Northwind Traders is ordering two monitors from Contoso, Ltd. Take a look at Northwind's internal requisition request, which it represents in XML format.

<NorthwindReq>
<Header reqNumber="IL0829" reqStatus="New" dateCreated="2000-10-24" timeCreated="16:29:00" />
<Shipping name="Brian H. Valentine" addr1="1234 Main Street" city="Anytown" state="AB"
zip="12345" country="USA" phone="(800)555-0123" />
<Items count="2" totalPrice="790.00">
<Item partNo="270FS" description="27-inch flat screen monitor" qty="2" unitPrice="395.00" />
</Items>
</NorthwindReq>

Despite an abundance of angle brackets, equal signs, and quotation marks, this document is fairly easy to understand and to follow. Yet at the same time, this document follows a certain predefined format, called a schema. A schema is an XML document that describes the format of other XML documents. Unlike other XML documents, though, a schema does not contain any data, and it only defines rules of what might appear in an XML document based on this schema.

Both XML and XML schemas are currently undergoing a formal standardization process by the World Wide Web Consortium (W3C). XML has reached a level of "W3C Recommendation," the highest level that W3C assigns. This recommendation can be found at http://www.w3.org/XML. At the time of this writing, XML Schemas have not reached the status of Recommendation. Microsoft BizTalk Server 2000 defines documents using a format known as XML-Data Reduced, which is a functional subset of this specification and one of the precursors to the W3C XML Schema effort, which gives you many of the benefits of XML Schema today. You can get the latest information on XML Schema on the Web at http://www.w3.org/XML/schema.html.

Document Exchange Concepts

Microsoft BizTalk Server addresses the two key aspects of any document exchange.

BizTalk Messaging Services provides the ability to send business documents in a secure and reliable manner. An example of such a document could be a purchase order sent to your supplier, or a request for a price quote on the same product sent to multiple suppliers in order to select the lowest bidder.

BizTalk Orchestration Services are all about defining business processes that were used to create the message and then implementing them using a highly integrated graphical environment. Processes defined using BizTalk Orchestration Services have the key characteristic that they are easily modifiable when the business changes, providing you with agility to respond to business changes.

Best of all, because most business processes involve sending and receiving documents and applying business rules to their processing, BizTalk Messaging Services and BizTalk Orchestration Services combine naturally, allowing you to create elegantly integrated solutions.

In this lesson, and in the lessons that follow, we will teach you about the fundamental concepts surrounding BizTalk Server, and also provide you with the skills to understand the tools and processes required to start building solutions with BizTalk Server.

Install BizTalk Server

In the remaining lessons, we will work together through the sample scenario of Northwind Traders buying computer equipment from Contoso, Ltd. We will explain what happens at every step of that process, and we will show you how to define formats of business documents in XML using BizTalk Editor, how to describe internal business processes using BizTalk Orchestration Designer, and finally how to tie it all together without having to write any code! Well, okay—some code. While there is no coding specific to BizTalk Server integration, you still need to build your own business-specific rules; however, in these lessons we will keep this code to an absolute minimum.

All the examples in the lessons are designed in such a way that they can be installed and executed on a single computer; however, you can also configure two or more servers to closely match the distributed nature of your particular environment if you want to do so.

Before you install Microsoft BizTalk Server, make sure you have read the Readme.htm and Installation Guide.htm documents, paying particular attention to the following important prerequisites:

  • You must have a computer running Microsoft Windows® 2000 with Service Pack 1 or above (Professional or Server both work), including IIS and MSMQ services, and an account with administrative rights on that computer.
  • You must have Microsoft SQL Server™ 7.0 with Service Pack 2 or above (you can install SQL Server Desktop Edition if you choose to run everything on a single workstation running Windows 2000 Professional) and password for the "sa" account. If you use SQL Server 2000, you must configure it for "mixed" security mode in the install wizards that is not the default.
  • Microsoft Visio® 2000 SR1 Standard or above must be installed on the computer where you are installing BizTalk Server.
  • The Enable authoring option on the Server Extensions tab of the Default Web Site must be turned off in the Internet Services Manager.

Also, in order to execute the scripts for these lessons you need to install MSMQ component of Windows 2000.

Let's Do Business

Now that you have successfully installed and configured BizTalk Server, let's talk about a business scenario we will use in our lessons.

A computer hardware retailer, Northwind Traders, is ordering computer parts from Contoso, Ltd. An internal procurement application at Northwind is creating a purchase requisition, just like the one we showed previously, and writes it as a file on a hard drive. This file is picked up by BizTalk Server and passed to Northwind's order approval process. If the requisition is declined, it is marked as such and written as a file on a hard drive. If it is approved, a purchase order is generated and sent to Contoso using HTTP protocol, just like in a real-world scenario. In our simplified example, a requisition is always approved if it does not exceed $1,000, and is declined otherwise.

In our example, both businesses are using Microsoft BizTalk Server 2000. While BizTalk Servers work well with each other, you can also use BizTalk Server to interact with businesses that are not using this technology.

Once the BizTalk Server on the Contoso side receives the purchase order (in our scenario we will use the same instance of BizTalk Server to perform tasks for both sides), it passes the purchase order on to Contoso's business process, which generates an invoice to be delivered to Northwind, once again using HTTP protocol. Finally, BizTalk Server on Northwind's side receives the invoice and writes it as a file on a hard drive.

Figure 1 shows what this process looks like at a high level.

Ee265599.biztalk_lesson1_1(en-US,BTS.10).gif

Figure 1. Example of a business process that uses BizTalk Server and the HTTP protocol

Run the Scenario

To execute the scenario above, download and run the archive file LearnBizTalk.exe.

Be sure to choose C:\ as the default location where the files should be extracted. This creates a C:\LearnBizTalk directory containing all the files necessary for our lessons. After all the files have been extracted, run the script file Setup.vbs located in the C:\LearnBizTalk\Scripts directory. This script file configures BizTalk Server for use during these lessons. Depending on your server environment, the script might take a few minutes to complete, which will be indicated by a message box.

Once the script has completed, locate the files named ReqToApprove.xml and ReqToDecline.xml in the C:\LearnBizTalk\Documents directory. Examine each file by double-clicking it to open it in Microsoft Internet Explorer. Notice that the reqStatus field is set to New, and note the values of the totalPrice and reqNumber fields in each document.

You are now ready to see BizTalk Server in action. Copy the file named ReqToDecline.xml from the C:\LearnBizTalk\Documents directory and paste it into the C:\LearnBizTalk\Pickup directory. Make sure you are not moving the file but rather copying it because it will be processed by BizTalk Server and removed from the \Pickup directory. Since the order total in this requisition exceeds $1,000, it gets declined and a message box is displayed informing you of this.

Copy the file named ReqToApprove.xml from the C:\LearnBizTalk\Documents directory and paste it into the C:\LearnBizTalk\Pickup directory. Now, instead of being declined, the requisition is approved, a purchase order is generated and sent to Contoso, the purchase order is processed, an invoice is created and sent back to Northwind, and finally an invoice is received at Northwind and written as a file to the C:\LearnBizTalk\Output directory. Go ahead and open ContosoInvoice.xml from the \Output directory in Internet Explorer by double-clicking it. Note the value of the reference field is now the same as the original reqNumber field.

That completes Lesson 1. Congratulations—you have successfully installed BizTalk Server and run your first scenario.

In Lesson 2 and the lessons that follow, we will take a closer look at what happens at each step of this process, and how to configure BizTalk Server to perform all the necessary tasks.

Show: