250 likes | 279 Views
Microsoft BizTalk Server Tutorial. CIS764 - Enterprise Database Design Oubai Bounie. Introduction. Microsoft BizTalk Server is an integration server product that enables you to develop, deploy, and manage integrated business processes and XML-based Web services.
E N D
Microsoft BizTalk Server Tutorial CIS764 - Enterprise Database Design Oubai Bounie
Introduction • Microsoft BizTalk Server is an integration server product that enables you to develop, deploy, and manage integrated business processes and XML-based Web services. • Microsoft BizTalk Server enables you to connect diverse applications, and then to graphically create and modify business processes that use the services that those applications provide. • BizTalk Server engine provides a mechanism for specifying business rules, better ways to manage and monitor the applications built on it. • BizTalk supports many built-in data adapters. (SOAP, Message Queuing, FTP, HTTP, SMTP, SQL, EDI, File) • BizTalk supports many data format (Database, Formatted Text, HL7, XML) • BizTalk engine uses XML for all internal processing.
Prerequisites • Microsoft Windows server 2003: you can download trial version from http://www.microsoft.com/windowsserver2003/evaluation/trial/default.mspx. • Microsoft SQL Server 2000: you can download trial version from http://www.microsoft.com/sql/evaluation/trial/. • Microsoft BizTalk Server 2004: you can download trial version from http://www.microsoft.com/biztalk/evaluation/trial/default.mspx. • Microsoft Visual Studio 2003 or newer: you can download trial version from http://msdn.microsoft.com/vstudio/products/trial/.
BizTalk Tutorial • This BizTalk tutorial demonstrates how you can use BizTalk Server orchestrations to convert an XML message (a purchase order) into a related, but distinct type of message (an invoice). • This tutorial uses two folders: "In" folder is the pick up folder where input file will be dropped to be picked up by BizTalk. And "Out" is the output folder where BizTalk will drop the results. • When you place a file, such as the sample file SamplePOInput.xml, into this folder, BizTalk Server processes the message using the following steps: • BizTalk Server retrieves the XML purchase order message from the receive location folder In. • The orchestration uses the map file to create an XML invoice from the XML purchase order. • BizTalk Server places the resulting XML invoice message into the send adapter folder Out. • We will use Microsoft Visual Studio to build a BizTalk application to achieve the above solution.
1. Create BizTalk Project • Run Visual Studio • From the menu, select File -> New -> Project • Select "BizTalk Projects" from the project types listbox • Select "Empty BizTalk Server Project" from the templates listbox. • Enter the project name and location and click OK to proceed.
2. Create the Invoice schema • Right click on the project icon in the Solution Explorer window and select Add -> Add New Item. • Select Schema from the templates list box. • Name the schema as InvoiceSchema.xsd
4. Create the Map • Right click on the project icon in the Solution Explorer window and select Add -> Add New Item. • Select Map from the templates list box. • Name the Map as POToInvoice.btm
5. Create the Orchestration • Right click on the project icon in the Solution Explorer window and select Add -> Add New Item. • Select BizTalk Orchestration from the templates list box. • Name the Map as HelloOrchestration.btm
6. Create Setup.bat to deploy the project and bind the ports to BizTalk. @SETLOCAL @CALL "%VS71COMNTOOLS%vsvars32.bat" @SET SolutionName= HelloWorld.sln @SET AssemblyKeyFile= HelloWorld.snk @SET BindingFileName= HelloWorldBinding.xml @SET SendPortName= HelloWorldSendPort @SET ReceivePortName=HelloWorldReceivePort @SET ReceiveLocationName= HelloWorldReceiveLocation @SET FileReceiveDirectory=In @SET FileReceiveLocation= \%FileReceiveDirectory%\*.xml @SET FileSendDirectory=Out @SET FileSendAddress= \%FileSendDirectory%\%%MessageID%%.xml @SET OrchestrationName=HelloWorld.HelloSchedule @SET AssemblyName=HelloWorld @IF NOT EXIST %AssemblyKeyFile% sn -k %AssemblyKeyFile% @DevEnv %SolutionName% /Deploy Development /Out Build.log @BTSDeploy Import Binding=%BindingFileName% Log=Binding @CScript /NoLogo "..\..\Admin\WMI\Start Send Port\VBScript\StartSendPort.vbs" %SendPortName% %FileSendAddress% @CScript /NoLogo "..\..\Admin\WMI\Enable Receive Location\VBScript\EnableRecLoc.vbs" %ReceivePortName% %ReceiveLocationName% %FileReceiveLocation% @CScript /NoLogo "..\..\Admin\WMI\Enlist Orchestration\VBScript\EnlistOrch.vbs" %OrchestrationName% %AssemblyName% Start @ENDLOCAL
7. Test the application • Create a sample XML file to use it as input. Name it SamplePOInput.xml • Copy and paste this XML code into the new created file<?xml version="1.0"?> <ns0: PO xmlns:ns0="http://HelloWorld.POSchema"> <PO_Number>1234</PO_Number> <Total>$19.99</Total> </ns0: PO> </xml> • Copy the new file into the In folder. • Check the Out folder for results. You should get a new xml file that should look like this: <?xml version="1.0" encoding="utf-8"?> <ns0:Invoice xmlns:ns0="http://HelloWorld.InvoiceSchema"> <Number>1234</Number> <TotalPrice>$19.99</TotalPrice> </ns0:Invoice> </xml>
References • MSDN Library. Microsoft BizTalk Server 2004 Introduction. http://www.msdn.microsoft.com/library/default.asp?url=/library/en-us/def/htm/ebiz_def_portal_page.asp • David Chappell. (2004) Understanding BizTalk Server. http://go.microsoft.com/fwlink/?LinkId=21281