HelloWorld (BizTalk Server Sample)
The HelloWorld sample demonstrates how to use BizTalk orchestrations to convert an XML message (a purchase order) into a related, but distinct, type of message (an invoice).
What This Sample Does
This sample configures the In folder as a receive location. 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.
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 Out folder.
How This Sample is Designed and Why
In an intercompany message-exchange scenario, it is often necessary to convert inbound messages received from trading partners into a format that internal applications can recognize. This sample uses a Receive shape, a Transform shape, and a Send shape to achieve this result. The Transform shape plays the important role in this sample because it is where the message format conversion occurs. You drag a Transform shape into your orchestration and configure the source message, map name, and destination message for it. During run time, the source message is mapped to the destination message by using the map you designated.
For more information about the Transform shape, see How to Configure the Transform Shape. For more information about building a map, see Creating Maps Using BizTalk Mapper.
Where to Find This Sample
<Samples Path>\Orchestrations\HelloWorld\
The following table shows the files in this sample and describes their purpose.
File(s) | Description |
---|---|
Cleanup.bat | Used to undeploy assemblies and remove them from the global assembly cache. Removes send and receive ports. Removes Microsoft Internet Information Services (IIS) virtual directories as needed. |
HelloOrchestration.odx | Orchestration that coordinates the conversion of the purchase order into an invoice. |
HelloWorld.btproj, HelloWorld.sln | Project and solution files for this sample. |
HelloWorldBinding.xml | Used for automated setup such as port binding. |
InvoiceSchema.xsd, POSchema.xsd | Schemas for the invoice and purchase order messages, respectively. |
POToInvoice.btm | Map for converting the purchase order to an invoice. |
SamplePOInput.xml | Sample input file. |
Setup.bat | Used to build and initialize this sample. |
Building and Initializing This Sample
To build and initialize the HelloWorld sample
In a command window, navigate to the following folder:
<Samples Path>\Orchestrations\HelloWorld
Run the file Setup.bat, which performs the following actions:
Creates the input (In) and output (Out) folders for this sample in the following folder:
<Samples Path>\Orchestrations\HelloWorld
Compiles the Visual Studio project for this sample.
Creates and binds the BizTalk Server receive location, and the send and receive ports to the orchestration.
Enables the receive location, and starts the send port. Enlists and starts orchestration.
Note
You should confirm that BizTalk Server did not report any errors during the build and initialization process before attempting to run this sample. You can confirm this by viewing your event logs.
Running This Sample
To run the HelloWorld sample
Paste a copy of the file SamplePOInput.xml into the In folder.
Observe the .xml file created in the Out folder. This file contains the XML invoice constructed from the input file SamplePOInput.xml. The format of the name of this file is <MessageID>.xml, where <MessageID> is the GUID generated to uniquely identify the message.
Uninstalling This Sample
To uninstall the HelloWorld sample
In a command window, navigate to the following folder:
<Samples Path>\Orchestrations\HelloWorld\
Run Cleanup.bat.