New BizTalk Server White Papers on MSDN

Many of these were released a few months ago in a beta form but now they are available on the Microsoft website.    



They include the following:


BizTalk Server 2004: A Messaging Engine Overview



BizTalk Server 2004 and Web Services



Connecting to the Elemica Network with BizTalk Accelerator for RosettaNet 3.0



Developing Integration Solutions with BizTalk Server 2004



Implementing UAN on BizTalk Server 2004 to Integrate Siebel and SAP



Risk Scoring with BizTalk Server 2004 and the Business Rules Framework



Transactions Across BizTalk Server 2004



Working With BizTalk Adapter for SQL Server



BizTalk Server 2004 Convoy Deep Dive



They all look like great reading!



In addition, I have finally gotten around to getting my website up and running.  It still needs A LOT of work, but at least it lists all my BizTalk samples, tools, and demos in one place.  Check it out at http://www.biztalkgurus.com


 

What’s new in BizTalk Server 2006 aka Rolling Thunder

BizTalk 2006 ships in the first half of 2006


I have read through the articles released by Scott Woodgate and other resources I could find on BizTalk Server 2006. So partly as a learning exercise and to provide a summary to my Boss who was concerned about the state of BAM in BizTalk 2004 I have condensed the articles down into the following bullet pointed summary with some personal opinions. Maybe this will be of use to people who are too time-strapped to read all the articles (if you are a more visual reader I suggest you get hold of the articles lots of pics of the new dialogs etc). Thanks to the BizTalk team for their openness in what’s in the next release it looks like a goodie. To get the original articles go here. I will be adding to this summary as more articles come out.


BizTalk Server 2006 Setup & Migration                             Microsoft Corporation     April 2005


BizTalk Server 2006 Business Activity Monitoring               Microsoft Corporation     April 2005


BizTalk Server 2006 Developer Tools Improvements          Microsoft Corporation     April 2005


BizTalk Server 2006 Adapter Enhancements                      Microsoft Corporation     April 2005


Looking Ahead to BizTalk 2006 and Beyond                       http://www.microsoft-watch.com/article2/0,1995,1751293,00.asp


Latest DBMS & Framework Upgrades


Supports 64 bit server releases


Runs on SQL Server 2005


Support for Visual Studio .Net 2005


Support for Virtual Server 2005


Simplified BizTalk installation and configuration


              Automatic upgrade for BizTalk 2004 implementations there is NO support side by side installation for 2004 and 2006


              Simplified BizTalk 2006 installation (the BizTalk 2004 installation could be difficult if you didn’t follow the 16 pages of instructions and install the supporting components this will be supplied in a single CAB file)


              The prerequisites which will still need to be manually installed first are:


o        Windows


o        SQL Server 2000 \ 2005


o        Visual Studio .Net 2005


              There will the different setup options for different types of users beginners vs seasoned developers


              Simplified BizTalk Database and Services Configuration


              Default Configuration Option for single user account for all BizTalk Server 2006 services i.e. don’t need to enter all the user names and passwords for BAM, HWS, ESSO, Rule Engine etc but the Custom configuration Option is also there if you want to select different users for different services as well i.e. if you are doing a BizTalk 2004 upgrade this may be a good idea.


              Only 4 screens in the configuration process down from ~8.


              More flexibility and less effort required to deploy BizTalk databases \ services over multiple CPUs in a Server Farm


              Setup log file contains more detailed information for trouble shooting install, config issues


Much needed overhaul of Business Activity Monitoring


              BAM Portal web app which exposes BAM activities to the Information worker this provides:


o        Customisable branding for the portal in its banner


o        An Activity Search page for generating and saving queries for reporting “instance data” and setting alerts  i.e. notify me if, when


o        An Aggregations page providing pivot table and graphing functionality for a point-in-time snapshot for the health of the business reporting “aggregate data”. You can easily set alerts here too (on values of individual cells in a pivot table) and there is the ability to “drill down” to the individual transactions\message instances. Thus alerts may be set on a single transactional value or the aggregation of many transactional values


o        An Alert Manager page to create and edit real time alerts set email addresses, messages and the ability for users to subscribe to those alerts. These alerts are fired on the monitoring of live data


o        Ability to create an advanced query for an alert if it cannot be created from query or pivot table data on the activity Search and Aggregation pages


o        The BAM Portal is big improvement to the messing around creating SQL Server Analysis Service Cubes & exporting it to Excel it is basically an easy to use query builder with subscribable alert functionality. It takes a step towards making BAM Information Worker user friendly rather than a reliance on the developer to implement and maintain BAM.


              BAM Pipeline Interceptor


o        No longer need to write custom pipelines components to call the BAM API a BAM pipeline interceptor is supplied out of the box


o        The Tracking Profile Editor (available in BizTalk 2004) has been improved to retrieve the message context and promoted properties from BizTalk message schemas. It enhances the ability to capture BAM data from orchestrations


              Ability to expose all BAM Portal Functionality as a Web Service


o        You can create queries for aggregate and instance data, set alerts and retrieve BAM configurations through a BAM Query Service and a BAM Management Service


              BAM Management command line utility


o        The input for this utility is the BAM Excel Template that is created by Business Analysts to define events and track data which will provide setup data for the BAM Portal


o        Supports change-on-the-fly so in order to make a change you don’t need to un-deploy and redeploy your BAM setup as in BizTalk 2004 which was tricky and could result in BAM data loss


o        Can retrieve a list of all BAM activities, views and aggregations


o        Alert and subscription management


o        Security management


              Excel Improvements


o        Installable BAM add-in for Excel which provides a BAM menu which enables you to create import and export Activities and View and query live data


Small additions to the developer user experience


              Flat File Wizard


o        A wizard interface to speed up the creation BizTalk XSD Schemas for flat files looks a bit like the MS Excel \ Access Flat File Importers but much more attuned and sophisticated to producing BizTalk schemas with a flat file extension. Many developers must have found this area of BizTalk development difficult so this UI is more or less an add-in however with the help of Google and some patience mastering the art of BizTalk schema development using the Flat File extension isn’t beyond reach


              Simple UI functionality in the Orchestration designer such as:


o        Zoomability for dealing with large and complex orchestrations


o        Preserving the collapsed and expanded settings on shapes on saving


o        Enlarging the set size of the expression window … why not make it resizable


              All in all there is not much change to the developer UI watch this space more changes may be revealed at a later date.


New and updated Adapters


              New Adapters


o        POP3 Adapter for receiving email messages and attachments BizTalk 2004 shipped with a SMTP adapter for sending email. There are a few of these already freely available on the net


o        Windows SharePoint Services Adapter for accessing documents stored in SharePoint libraries through polling for a document in a SharePoint directory or folder through a SharePoint web method. This may utilise a SharePoint view to filter the messages available to be received by the adapter. Sending a document to SharePoint is the reverse. Upon first glance this adapter is extremely configurable and flexible to use.


o        MSMQ adapter “out of the box” at the moment it’s available on the net


o        MQSeries Adapter “out of the box” at the moment it’s available on the net now has dynamic receive allowing it to determine at runtime the queue it will receive messages from.


              Updated Adapters


o        SMTP Adapter better user experience with the new Compose and Attachments tabs as part of the SMTP Adapter Property Pages Dialog and the ability to send plain text or html emails with multiple attachments. SMIME encryption and digital signing is not included add this through a MIME Encoder Pipeline Component in a send pipeline. New performance counters.


o        File Adapter better user experience not so many property pages to click around. Ability to give the Adapter different user credentials when accessing a file in a directory on a remote file share. New advance settings dialog to allow you to rename the files while reading, set a polling interval, set retry counts and intervals on removing files. New performance counters.


o        HTTP Adapter new Suspend Failed Requests setting to control whether a request just errors out or whether it can be resumed. New performance counters.


Summary


In creating BizTalk Server 2006 it seems the BizTalk team has focused on the most important improvements to BizTalk 2004 rather than a complete rewrite of the product.


R. Addis

The BizTalk Server 2006 CTP version installation guide

I guess the BizTalk Server 2006 CTP (Community Technical Preview) version will be distributed to TechEd 2005 attendees. I used be involved in a customer program introducing BizTalk Server 2006 to real customers. When they faced the major features of BizTalk Server 2006, they surely seemed to be quite satisfied with the enhanced features of the management, BAM, FF wizard, and so on. I hope you could get same feelings with the CTP version sooner or later. And..you will surely need this installation guide of the CTP version after getting the real software.

BizTalk messages based on .NET types instead of Xsd schemas

Abstract: You can create a BizTalk message from a custom .NET class, instead of using an Xsd schema. This practice has some pros and cons. Let’s see


Usually, the most common process is to start creating Xsd schemas, and use them in Orchestrations, to define BizTalk messages. But, why would you like to have BizTalk messages based on Xml? It seems obvious that all messages should be Xml based, but in fact, sometimes Xsd/Xml is not necessary and adds complexity.


When is Xsd/Xml needed?
Xml messages are very nice if you need Messaging. That is, interoperatibility, external communications, schema publication. But surprisingly, I find many situations where people are defining Xsd schemas for Xml messages where Xml is not needed at all. Well, Xml is still fashionable, so
If a message lives inside an orchestration (is being passed from within orchestrations), but it’s never going to be published externally, or is never going to be sent/received externally, there’s no advantage in using Xml. In fact, there’s no reason to use Xml.


Xsd hell: how do you create a message from the scratch?
It’s a well known issue that creating an empty instance of a message inside an orchestration is not easy. Having the xml string hardcoded is not very elegant. Pointing to a file is not very elegant at all. You would need the path harcoded. Well, you can put it in a .config file, but isn’t too complex to just create an empty message?
I’ve read some discussion about using Maps to create empty (or default valued) instances. Since I agree it’s a good idea, it’s still too complex to just create an instance of a message.
This message-from-the-scratch problem is inherent to the use of Xml, since a message is not instantiable.


Using a .NET class
You can use a .NET class, instead a Xsd schema. Define your orchestration message as a .NET type, using your class. Use references to XLANGs Base Types to promote your class properties to distinguised fields or properties.
Pros:

Instantiate it. Use constructors, destructors, static members for instance creation or whatever you want.
Use rich properties. Mark public properties as promoted or distinguished fields. Use get and set methods.
Reuse as objects in other projects.
Cons:
External publication and Interoperatibility. There is no Schema, so if you intend to publish it externally, what do you publish?
Dependency of XLANG assemblies, so limited reuse outside your BizTalk project.


Simple Sample:
Create a .NET class:
using System;
namespace STCEAI.Messages
{
 [Serializable]
 public class SimpleMessage
 {
  private string _id;


  public SimpleMessage()
  {
  }


  [Microsoft.XLANGs.BaseTypes.DistinguishedField]
  public string Id
  {
   get{ return _id;}
   set{ _id = value;}
  }


  public static SimpleMessage Create()
  {
   SimpleMessage msg = new
SimpleMessage();
   msg.Id = System.Guid.NewGuid().ToString();
   return
msg;
  }
 }
}


Note the property is marked as Distinguished Field in order to make it visible from within the orchestration. This attribute is in Microsoft.BizTalk.XLANGs.BaseTypes.dll. You can also mark it as a promoted property, assign a Namespace, and include all the Xml serialization attributes as needed.


Usage inside an orchestration, in a Message Assignment Shape :
SimpleMessage_msg = new STCEAI.Messages.SimpleMessage();
SimpleMessage_msg.Id = myId;


or better:
SimpleMessage_msg = new STCEAI.Messages.SimpleMessage.Create();