Friday, December 16, 2011

Windows Azure Service Bus EAI and EDI Labs

Microsoft today has put Windows Azure Service Bus EAI and EDI Labs on its Windows Azure Platform. These labs provides integration capabilities for the Windows Azure Platform to extend on-premises applications to the cloud, provides rich messaging endpoints on the cloud to process and transform the messages, and helps organizations integrate with disparate applications, both on cloud and on-premises. In other words, Service Bus EAI and EDI Labs provides common integration capabilities (e.g. bridges, transforms, B2B messaging) on Windows Azure Service Bus.

Below you find list of resources (taken from Windows Azure Service Bus EAI and EDI Labs - December 2011 Release page):

Installing the Windows Azure Service Bus EAI and EDI Labs - December 2011

Supplies details about what is required to properly install and run Service Bus EAI and EDI Labs.

Service Bus EAI and EDI Labs - Tutorials

Start learning the basics of developing Service Bus EAI and EDI Labs solutions using these short tutorials.

Business to Business Messaging

Learn how Service Bus EAI and EDI Labs enables business-to-business messaging on Windows Azure

Rich Messaging Endpoints

Learn about the basic concepts about of rich messaging endpoints and how to use them in Service Bus EAI and EDI Labs.

Transforms

Learn how to use and configure transforms with rich messaging endpoints.

Service Bus Connect

Learn how to use Service Bus Connect in an EAI application to extend the reach of cloud-based applications to on-premises LOB applications.

Samples: Service Bus EAI and EDI Labs

Download the samples available for Service Bus EAI and EDI Labs.

This is great news for us BizTalk professionals and ones that are interested in integration capabilities in the cloud.

I can see the labs through my management portal:

image

Have fun.

Monday, December 12, 2011

Ordina behaalt zilver in Microsoft Applicatie integratie

Afgelopen week heeft Ordina AIM binnen het Microsoft Partner Model de mooie zilveren status behaald binnen de competentie “Applicatie Integration”. Onder deze competentie vallen onder andere de bekende producten zoals BizTalk en WCF. Mede dankzij effort van Steef-Jan Wiggers en Sjoerd van Lochem is deze eerste mooie stap gemaakt. Steef-Jan ligt de prestatie verder toe:


Het Partner Model bij Microsoft is volledig op de schop gegaan, omdat in feite in heel de wereld en dus ook in Nederland teveel partners de status van “Gold” Partner hadden. Het onderscheid tussen de partners was in zijn geheel niet meer duidelijk. En “Gold” Partner waarin? Je bent Microsoft “Gold” Partner, maar wat betekent dit nu in feite voor mij als klant en waar onderscheid jij als leverancier van Microsoft diensten nu van de rest.

Als je voldoende opbrengsten levert als partner op Microsoft producten en diensten en voldoende gecertificeerde mensen in dienst hebt, dan was je “Gold” partner. Het nieuwe Partner Model van Microsoft is georganiseerd op basis van competentie, waarbij criteria gelden voor:

• Referenties
• Certificering
• Omzet

Op basis van je status op competentie kun je je onderscheiden van andere partners. Er zijn diverse competenties voor virtualisatie, communicatie, desktop, web development, applicatie integratie enzovoort. Op de competentie kun je een “Silver” of “Gold” status behalen.

Als Ordina AIM zijn we trots dat we de “Silver” status hebben kunnen behalen voor “Applicatie Integration”. De “Silver” status betekent dat we als Ordina AIM aan onze klanten kunnen laten zien, dat we voldoende referenties hebben opgebouwd op het gebied van applicatie integratie, voldoende gecertificeerde mensen aan boord hebben en omzet maken door het leveren van diverse diensten. We behoren met deze status op “Applicatie Integratie” tot 5% van alle bedrijven wereldwijd, die dergelijke status hebben op deze competentie.

De “Silver” status is een mooie mijlpaal, die we hebben bereikt. We willen uiteindelijk natuurlijk de status “Gold”. Deze status geeft ons nog meer onderscheidend vermogen ten opzichte van onze concurrenten. Met deze status kunnen we namelijk aantonen dat we wereldwijd tot de beste behoren op het gebied van “Applicatie Integration”. De status toont onze commitment tot Microsoft technologie, die bij deze competentie hoort. Technologie als BizTalk Server, Windows Communication Foundation (WCF) en SQL integratie technologie als Integration Services en SQL Broker. Als Ordina AIM zijn we in staat specifieke, hoogwaardige oplossingen te leveren en de “Gold” status zal uiteindelijk het bewijs richting onze klanten zijn.

Contest at Sandro's blog: Win an e-copy of Microsoft BizTalk Server 2010 Patterns book


Sandro Pereira has a contest in which you can win an e-copy of Microsoft BizTalk Server 2010 Patterns from Packt Publishing.

Since I love the book as well (got the printed version), I thought I'd try to give the contest some extra attention.

If you would like to win an e-copy, be fast: the contest closes Friday December 16th.

Friday, December 09, 2011

BizTalk Server 2010 R2: Continuing story….

Last year communication of BizTalk has been a little cloudy. Will it be discontinued, will it be dead. Richard blogged on the BizTalk future story, and Tony kept discussion very lively with his talk on World Partner Conference this year. In the roadmap on Microsoft BizTalk site a vNext after 2010 was depicted.

A new release has been announced through BizTalk Server Team Blog: BizTalk Server 2010 R2. This is great news as people wondered when next release was due. This release will be delivered six months after Windows Server 8. To me it makes sense as the release will align not only with Server 8, but also VS 2011 and SQL Server 2012. Besides platform alignment other improvements have been announced like alignment with industry standards, adapter improvements, and more tighter integration with Azure. The release does not deviate much as what was shown on existing roadmap.

image

Exact dates of release of BizTalk Server 2010 R2 are not disclosed yet. I think when it will be release it will probably be renamed BizTalk Server 2012 or BizTalk Server 8. I personally am very happy with the announcement of this release and Microsoft continuing support for this great product and dedication to keep improving it. BizTalk is not dead or going away soon and I think it to stay for a long time.

Cheers.

Thursday, December 08, 2011

New kid on the block: My BizTalk Processing Monitor

Since quite some time I am developing a BizTalk monitoring tool, called BizTalk Processing Monitor (or BPM). This tool is different from most other BizTalk monitoring tools in that it does not monitor end points, but it gives (near) realtime insight if messages flow through your BizTalk Group. If there are any interruptions, you get warned. To retrieve this kind of information, BPM uses the Tracking database.


Diagram View - here you can add a picture from your system and define which information you want to see 
 Wednesday December 7 I had the pleasure to demonstrate BizTalk Processing Monitor to Saravana Kumar, known from amongst others BizTalk247 and BizTalk360. During a one hour Skype session we discussed BizTalk monitoring in general and BizTalk 360, but most of the time was reserved for a demonstration of my BizTalk Processing Monitor.

For January my collegue Steef-Jan Wiggers, Saravana and me are planning a talk at Ordina, Nieuwegein in the Netherlands about BizTalk monitoring and the available tools. This talk will be part of Ordina's 'Innoveer jij mee' series (Innovate wih us). For now I'll just show you a couple of screen dumps from BPM, but for a live demonstration I hope to meet you in January! Details will follow when available.

In the mean time: if you are interested in the capabilities of this tool or just want to know how it works, please don't hesitate to drop me a line!


Warning Levels legend - When, for example,  it took longer
than 60 minutes to receive a certain messagetype, the
so-called Tracker in the Diagram View will turn red

Throttling View - Your Hosts and their instances are auto discovered. In case BizTalk is throttling, you get a warning.

Performance Counters by Throttling State - this screen shows more information about the
throttling related performance counters
 

Thursday, December 01, 2011

BizTalk360 Another release more capabilities: Version 3.1

BizTalk360 evolves to be a more and more mature product. In past I and other BizTalk MVP’s have written stories on this monitoring product (I used to call it a tool, but it has gone that stage it’s a product and a very good one). I have been impressed by it since the first time it almost a year ago.

On Saravana’s blog you find a detailed overview what is new in this 3.1 release. On my VM I have 2.5.790.0 version, which I uninstalled before installing the 3.1.335.0 version i.e. public beta. And I must say this was an easy process lasting only a few minutes. Only thing I needed to do is deleted the BizTalk360 database in my SQL Server database.The msi installer has been improved.

One of the new feature is the graphical end-to-end message flow viewer. I tested this by enabling tracking in one of my orchestrations. I enabled all tracking options in ports and orchestration. I ran a message through orchestration and went to BizTalk360 Tracking Data Queries and click pipeline (XmlReceive) belonging to receive location that picks the messages and sends them into MessageBox to be picked up by orchestration.

image

This comes very clear when dialog pops up and I click Transmitter on pipeline, then transmitter of orchestration and I get diagram shown below.

image

I conclude that this is a very handy feature and works easy with guidance given by Saravana blog post on this feature.

Thumbs up.

Wednesday, November 30, 2011

BizTalk Adapter Pack 2010: Calling a View in SQL Azure

I have posted a new sample on Code Gallery: BizTalk Server 2010 Adapter Pack: Call SQL Azure View.This is one of samples I have used in my talks on BizTalk Adapter Pack 2010 Integration (A Lap Around BizTalk Adapter Pack 2010) I held in Stockholm for Swedish BizTalk User Group and in Nieuwegein for BizTalk User Group The Netherlands. Hopefully you experiment with it yourself. If you want to work with SQL Azure and want to create a database, see How to Create a SQL Azure Database wiki on TechNet.

Cheers.

Monday, November 21, 2011

My First Ten TechNet Wiki Articles on BizTalk

image

Last couple of week I written a few wiki article for TechNet Wiki a place, where content is generated by community about Microsoft technologies for the community. I very much like the concept and glad I was able to contribute (see my interview on Wiki). Below you will find a list of my ten completed wiki articles on BizTalk:

  • First the featured article BizTalk Server 2010 and discusses BizTalk and shows all resource on its features.
  • Second a list on all available BizTalk Server 2010 community tools in BizTalk Server 2010 – Tools.
  • Third article is on BizTalk Server 2010 Adapter Pack an enhancement of previous adapter pack 2.0.
  • Fourth article is a short overview on BizTalk Server 2010 and created before I written complete article on BizTalk and its features.
  • Fifth article on BizTalk databases as a survival type of article listing all relevant resources on how to maintain healthy BizTalk environment with focus on BizTalk databases.
  • Subsequently I written another article listing resources for recovery of BizTalk itself not its databases, but this article goes hand in hand with the previous fifth article.
  • Seventh article is a BizTalk beginners guide listing all resources for a beginner and a little outline how he/she should proceed.
  • Subsequently I also written a preparation guide for 70-595 exam that can be read in conjunction with beginners guide.
  • Ninth article talks about monitoring tools for BizTalk and lists all alternatives to SCOM.
  • Final tenth article is a collection of resources for BAM and is again a survival type of article.

I hope you will find these articles useful and feel free to edit them (correct, add, enhance) as that is intention of wiki’s. I will be working on next couple of articles in near future, which will be more in depth BizTalk ones.

Cheers!

BizTalk User Group Meeting 30 November 2011

My company Ordina will host next Dutch BizTalk User Group Meeting. This event we will have four speakers and agenda will be:

It will be all Dutch talks and if you able to attend you can sign up here.

Wednesday, November 02, 2011

Code Gallery BizTalk Samples : Steef-Jan Wiggers

Past few weeks I have contributed the following samples to MSDN Code Gallery:

This sample will show how to perform simple table operations using WCF-SQL Adapter a part of BizTalk Server Adapter Pack. The Sample provided by Microsoft shows only Select statement operation. This sample will show all the other operations. It is based on the BizTalk Adapter Pack 2010 WCF-Custom with sqlBinding Table Operations through Messaging solution post.

This sample will show polling a SQL Azure database table. It is based on Polling SQL Azure Database Table with WCF-SQL Adapter blog post.

This sample will show all the Oracle Table operations (in comparison with SQL, but there a few differences!). It is based on Table Operation on Oracle 11g XE with OracleDbBinding blog post.

This sample will make use of BizTalk Adapter Pack as well and call Stored-Procedure in Azure. Sample is based on SQL Azure Stored Procedure blog post.

This sample will demonstrate three query operations through messaging in stead of using the WCF Service Model. BizTalk Server 2010 Adapter Pack Samples show only invoke ExecuteReader operation in SQL Server using ,NET. This sample shows all operations through messaging.

Cheers!

Sunday, October 30, 2011

BizTalk Server 2010–Tools

I have created an article for TechNet Wiki called BizTalk Server 2010 – Tools and it is a compilation of all tooling available through Codeplex or Microsoft Download Center. These tools are not provided out of box with BizTalk Server 2010, but can be of tremendous help in debugging, logging, testing, troubleshooting, documenting solution, and performing health checks and benchmarking of your BizTalk environment. The number of tools listed and of codeplex projects pretty much covered in the article. Thanks to Colin Meade the Orchestration Profiler can be of used with BizTalk 2010. If you feel there is a tool that I have missed, which can be beneficial in any way, please feel free to add comment to the article.

Cheers !

Sunday, October 23, 2011

BizTalk Server TechNet Wiki Articles

The TechNet Wiki is a library of information about Microsoft technologies written by the community for the community. Through TechNet Wiki you will find the following BizTalk Server 2010 articles:

Hopefully you find one of more article that are useful for you to learn about capabilities of BizTalk or new ways to integrate with BizTalk.

Cheers!

Thursday, October 13, 2011

BizTalk User Group Sweden : My debut as International Speaker

Next week a new BizTalk User Group Meeting in Sweden is scheduled with two sessions:

  • A Lap Around BizTalk Adapter Pack
  • A Lap Around BizTalk360

The first session will be done by me and it will be first time I will do a session in English in another country. The other session is done by Saravana on BizTalk360. It will be second time both me and Saravana will share the same stage. Last time was June this year for the Dutch BizTalk User Group.

There are still seats left for this event, so if you want you can attend; it is in Stockholm and I expect many if it not all from Sweden. My session will be talk about BizTalk Adapter Pack, its evolution how it became the pack that is shipped along with BizTalk 2010, its origin, alignment with Microsoft Platform, Cloud and an integration scenario with Oracle. Saravana will take you through his BizTalk360 product showing a lot of its capabilities and how you can leverage them in a BizTalk production environment.

For those who will attend I am looking forward to meet you and present my story on the BizTalk Adapter Pack.

Cheers!

Monday, October 10, 2011

BizTalk360 new V2.5 release–Message Box Viewer Integration

Saravana has released new version of BizTalk 360, a version 2.5 release with following important features/enhancements:

  • Role Based Security
  • Knowledge Base Repository
  • Message Box Viewer Integration
  • Message Detail (Content/Context)
  • Alert/Notification Enhancements

It shows that BizTalk360 has more monitoring and troubleshooting capabilities. In this blog post I will focus on troubleshooting capability: MessageBox Viewer Integration.

Many of you have heard of the BizTalk MsgBoxViewer tool that has been around for some time. It has been created by Jean-Pierre Auconie. The tool runs a set of tests and queries against the MessageBox database of your BizTalk Server. The results are displayed in the tool and can also be exported as HTML reports including links.

image

I wondered how this integration works with BizTalk360.After installing BizTalk360 V2.5 I looked for the feature. I clicked Settings –> Configure MBV Integration.

image

You will see that you need to install the MessageBox Viewer first as licensing restrictions prohibit bundling with BizTalk360. On BizTalk360 the steps are explain for configuring MessageBoxViewer. If you do not follow these steps you will see error like below:

image

and nothing will appear in BizTalk360 Message Box Viewer – Reports!

image

If you do have accept the EULA, but still see no reports than check if key below exists.

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MBVConsole\EULA]
"EULAAccepted"="YES"

In my x64 environment it set the following key after accepting EULA of MBVConsole (and not the above):

[HKEY_LOCAL_MACHINE\SOFTWARE\MBVConsole\EULA]
"EULAAccepted"="YES"

After configuration you set schedule (day(s) and time(s)) and the click Save.

image

I set schedule on everyday at evening/night on 21:00 – 06:00 (as a test, later I rescheduled to only 21:00). And soon as MBV has run you will see report appear like below.

image

There is more besides having a report and that is BizTalk360 also allows you to send emails based on MBV report thresholds. For instance if in the last run MBV reports a couple of critical errors (let’s say 5), you can configure BizTalk360 to send a notification!

image

This is just one of new features of BizTalk360. There is more to explore through Feature Tour.

Cheers!

Thursday, October 06, 2011

BizTalk Adapter Pack 2010 WCF-Custom with sqlBinding Table Operations through Messaging solution

Last year I did a post on table operations using WCF-SQL Adapter as part of Adapter Pack 2.0. This post was targeted for BizTalk 2009 and I now like to do an update targeting BizTalk Server 2010. With BizTalk Server 2010 (DVD/ISO) comes the adapter pack that bundles old (non-WCF based) Enterprise Adapter for BizTalk with new (WCF-based) adapters to support compatibility with different versions of Line Of Business systems (SAP, Siebel, Oracle, Oracle eBusiness Suite). The BizTalk Adapter Pack 2010 includes support for new versions of the following line-of-business applications and databases: SAP 7, Oracle EBS 12.1 and SQL Server 2008 R2. The Adapter Pack also provides support for Visual Studio 2010 and .NET Framework 4. For documentation see MSDN BizTalk Server Adapter Pack 2010 Documentation and interactive poster.

Installation is straight forward and made simpler through following steps in a wizard and adjusted to installing on x64 (you can read that in post “Installing BizTalk Adapter Pack 2010 on x64”). After installation you will need to add adapter manually if you want to use SQL adapter through a WCF-SQL port.  The SQL adapter can be also used in BizTalk as a WCF-Custom port. If you want to use the SQL adapter through a WCF-Custom port, you do not need to add the WCF-Custom port to the BizTalk Server Administration console, because the WCF-Custom port is added to the BizTalk Server Administration console by default. When you use Consume Adapter Service Tool in BizTalk Project it will create xml schema’s based on operation contract (inbound or outbound) and WCF-Custom binding file.

To perform operations on SQL Server through messaging by using the WCF-Custom adapter, you must perform a set of design-time and run-time tasks using Visual Studio and BizTalk Server Administration console respectively. The following high level tasks are required to create a message based solution:

  • Create BizTalk project, and generate schema.
  • Create messages instances.
  • Build and deploy the BizTalk project.
  • Configure the application.
  • Start the application.
BizTalk Project and generate schema (‘s)

First, we need the XML schemas, which represent our data source. By installing the WCF LOB Adapter SDK, you will have a metadata browser built into Visual Studio. NET at your disposal. You can access this from a BizTalk project by right-clicking the project, choosing Add then Generated Items and selecting Consume Adapter Service.

image

This action opens a new window that provides us the interface to connect to, browse, and select database objects for service interaction. The very first thing we need to do here is choose the sqlBinding as the service binding, and then configure a connection string. The simplest working connection string consists of an Initial Catalog value for the database, and a valid Server name entry. Note that the adapter now uses a connection string in the form of a URI instead of the traditional Data Source=;Initial_Catalog=;User_ Id=;Password= style.

image

Once a satisfactory connection string is defined, the Connect button can be clicked to establish an active connection to the target database. If the connection is successful, one see the category browser with a set of database object categories.

image

On the root "/" character a range of un-typed generic functions are displayed, which can be exploited. Click on tables and you will see a number of Tables, select Products.

image

Click the Delete, Insert, Select and Update statement in available categories and operations. Click the Add button to add the operations. After clicking the Ok button at the bottom, schemas (and a single binding file) is added to our associated BizTalk project in Visual Studio.NET.

image

The binding is required later on, when solution is deployed and ports have to be configured for SQL Server (i.e. Send Port). This binding has to be edited for each operation (Select, Update, Insert, and Delete), because there is no corresponding logical ports as this a complete message based solution (if you keep original binding file and import in than you will run into error described in this post Why does the Adapter say ‘Action is not understood’ even though I am using the binding file generated by the ‘Consume Adapter Service’ wizard?). I choose to create four new binding files, each a copy of original, but all with a single operation in BtsActionMapping.

image

Create message instances

Next step is to generate messages from generated schema, which can be routed from Recieve location in Receive Port to a send port with WCF-Custom Adapter. Generating the first message is easy, as you can right click on the TableOperation.dbo.Products.xsd and select Generate Instance and an instance of top element is created (e.g. Select).

image

You will get a instance of message as depicted below:

image

By opening up the TableOperation.dbo.Products.xsd in file-editor you can move the next operation to top, so you can then in Visual Studio generate the next instance for an operation or you can use XML-Editor inside Visual Studio (closing schema, right click and select open with… and then select XML Editor) to move elements around. In end you will have four xml instance for TableOperations, save to file as xml (type all files, encoding UTF-8!).

Build and deploy the BizTalk project

Only schemas are required for a messaging only scenario with WCF-SQL Adapter to perform operations on SQL Server. Therefore after assigning a strong name and application name to BizTalk project it can be build and deployed.

Configure the application

After solution has been deployed it is time to configure the ports. FILE ports are easy and focus here will be configuring the WCF-Custom Send Ports. Through BizTalk Management Console one can browse to BTS.SQL.Table.Operations application and right click the application and select Import Bindings … and navigate to file called WcfSendPort_SqlAdapterBinding_Custom_Select.bindinginfo.xml, select and click Open. You will notice that a Send Port will be created automatically. You can repeat the import for binding:

  • WcfSendPort_SqlAdapterBinding_Custom_Delete.bindinginfo.xml
  • WcfSendPort_SqlAdapterBinding_Custom_Insert.bindinginfo.xml
  • WcfSendPort_SqlAdapterBinding_Custom_Update.bindinginfo.xml

Next steps are setting filters on WCF-Send Port and File Send Port. Configuration is as follows:

image

Start the application

In the end your messaging solutions can be depicted as below. After configuration you can start BizTalk application. Schema below gives an overview what will happen once drop message in folder (e.g. In folder).image

I hope with this post I was able to show all operations (CRUD) on table. The sample from MSDN shows only SELECT operation and here I have extended on that, showing all operations and how to setup WCF-Custom Adapter using sqlBinding and steps to do, before you can execute all operations on a SQL Table.

You can find sample for this post through MSDN Code Gallery: BizTalk Table Operations – Messaging

Cheers!

Monday, October 03, 2011

BizTalk Operations Using a Web Console

One of features that BizTalk lacks is a Web UI for operating BizTalk. There is a BizTalk Administration Console that enables BizTalk operators and Administrators to deploy and manage BizTalk Server applications and group(s). The console is basically a Microsoft Management Console (MMC) you can start from Server where BizTalk is installed or remotely on a different machine, but it is not web based. To be able to manage BizTalk from a Web UI has been a desired by BizTalk professionals for quite a while (as in years!).

I think many of you by now have heard or seen BizTalk360, a web based (RIA) BizTalk monitoring/support tool for Microsoft BizTalk Server. BizTalk360 is product created by Saravana Kumar a fellow BizTalk MVP and it is a commercial tool that gives you remote access to BizTalk Group, and gives a nice web based (Silverlight) UI! I have seen this tool in early stages during MVP summit in Redmond last February and it has evolved into great tool, feature rich with an excellent User Experience (see latest post by Kent BizTalk: Adding BizTalk 360 to your Environment). BizTalk360 can be an alternative to SCOM using BizTalk management packs.

There is another alternative if you desire a Web based UI, but do not or wish to use a product like BizTalk360. That is BizTalk Web Console you can download since this week from Codeplex and it was developed by Abdul Rafay another fellow BizTalk MVP.

As I did not see it in action I was interested to see what it can do. According to description it allows administrators/operators to perform the following operations from the browser:

  • Stop/Start/Restart Host Instances
  • View Status of Service Instances by applying queries to the group.
  • Stop/Start/Unenlist Orchestrations, Send Ports and Send Port Group
  • Stop/Start Receive Locations

I download the tool and installed it on my VM with BizTalk 2010 according to the release notes. I then opened up the BTS2010WebConsole in my browser and started some operations like Stop/Start/Restart Host Instances. That worked without a problem.

image

I then tried some others operations and they worked fine too.

image

These basic operations are available from the browser and the UI is very basic and straight forward. The number of operations is still limited though and resembles a subset of all capabilities the BizTalk Administration Console offers.It is a start and for those who want to have custom web based access to their BizTalk group they can leverage this project to their own needs. If you do have enough budget in your organization and prefer to have an off the shelve product than BizTalk360 is definitely a product you should consider!

Sunday, October 02, 2011

Polling SQL Azure Database Table with WCF-SQL Adapter

I have seen polling related questions sometimes on the BizTalk forums and I myself occasionally have come across a scenario’s where I had to use polling. In past I have read a couple of posts on polling like the one from Richard (TypedPolling) and Armen (Polling). Now with SQL Azure I wondered if it is possible to poll a SQL Azure Table.

If you have an account with Windows Azure Portal than you can create 1 Gb database online. You can go for a free trail (90 days), or through MSDN account (you receive quite a lot of benefits with Windows Azure), or commercially (see pricing). In a previous post I showed some steps how to create a new SQL Azure database.

You can create a database through Windows Azure Portal or SQL Management Studio. If you connect to SQL Azure through Management Studio you need to use SQL Server Authentication, fill in the server name, and credentials.

image

Once connected you will in the left pane see Azure database you connect to.

image

When you click New Query a query windows will appear on the right. Here I executed the following statement:

USE [master]
GO

CREATE DATABASE [CustomerOnlineDb]
GO

In left pane you will see new database in databases tree. Select that database and click New Query again, a new query pane will appear. Here I executed the following statement:

CREATE TABLE [dbo].[CustomerAddress](
    [CustomerAddressID] [int] IDENTITY(1,1) NOT NULL,
    [FirstName] [nvarchar](50) NOT NULL,
    [MiddleName] [nvarchar](50) NOT NULL,
    [LastName] [nvarchar](50) NOT NULL,
    [FullName] [nvarchar](50) NOT NULL,
    [CompanyName] [nvarchar](50) NOT NULL,
    [FullAddress] [nvarchar](50) NOT NULL,
    [PostalCode] [nvarchar](50) NOT NULL,
    [City] [nvarchar](50) NOT NULL,
    [StateProvince] [nvarchar](50) NOT NULL,
    [Country] [nvarchar](50) NOT NULL,
    [Polled] [bit] NOT NULL
CONSTRAINT [PK_CustomerAddress] PRIMARY KEY CLUSTERED
(
    [CustomerAddressID] ASC
)
)

GO

INSERT INTO dbo.CustomerAddress(FirstName, MiddleName, LastName, FullName, CompanyName, FullAddress, PostalCode, City, StateProvince, Country, Polled)
VALUES('Catherine','R.','Abel','Catherine R. Abel', 'Professional Sales and Service','57251 Serene Blvd','91411','Van Nuys','California','United States',0)
GO

INSERT INTO dbo.CustomerAddress(FirstName, MiddleName, LastName, FullName, CompanyName, FullAddress, PostalCode, City, StateProvince, Country, Polled)
VALUES('Frances','B.','Smith','Frances B. Smith', 'Area Bike Accessories','6900 Sisk Road','95354','Modesto','California','United States',0)
GO

INSERT INTO dbo.CustomerAddress(FirstName, MiddleName, LastName, FullName, CompanyName, FullAddress, PostalCode, City, StateProvince, Country, Polled)
VALUES('Margaret','J.','Adams','Magaret J. Adams', 'Bicycle Accessories and Kits','Lewiston Mall','83501','Lewiston','Idaho','United States',0)
GO

INSERT INTO dbo.CustomerAddress(FirstName, MiddleName, LastName, FullName, CompanyName, FullAddress, PostalCode, City, StateProvince, Country, Polled)
VALUES('Samuel','N.','Agcaoili','Samuel    N. Agcaoili', 'Vinyl and Plastic Goods Corporation',' 25800-130 King Street West','M4B 1V5','Toronto','Ontario','Canada',0)
GO

INSERT INTO dbo.CustomerAddress(FirstName, MiddleName, LastName, FullName, CompanyName, FullAddress, PostalCode, City, StateProvince, Country, Polled)
VALUES('Robert','E.','Ahlering','Robert    E. Ahlering', 'Fun Toys and Bikes','6500 East Grant Road','85701','Tucson','Arizona','United States',0)
GO

I then executed SELECT * FROM dbo.CustomerAddress TSQL Statement and check if there is data.

image

I have set up now a database in SQL Azure with one table containing five records. The next step is to create a BizTalk project and having a xml schema and WCF-Custom Receive Port Binding generated for table in my SQL Azure database I wish to poll. I configured the URI to connect to SQL Azure (security, connection string and adapter binding properties), choose inbound operations and from available categories Polling. When I click Ok a DataSetSchema.xsd and Polling.xsd is generated together with WcfReceivePort_SqlAdapterBinding_Custom.bindinginfo.xml file. I deployed project after signing and giving appropriate name for BizTalk application.

image

Notice that with the Consume Adapter Service Wizard you have ability to choose between three type of inbound operations: Polling, TypedPolling and Notification. This means you can with:

  • Polling operation a data set as part of the polling message returned.
  • TypedPolling operation a strongly-typed polling message returned.
  • Notification operation a notification message returned.

Important step after deployment of schema’s is importing the custom binding file and setting some properties (i.e. pollDataAvailableStatement, pollingStatement). Importing a binding is a straightforward operation inside BizTalk Administation Console. After the receive port and location is created you can double click receive location and then Configure Type (WCF-Custom). URI is present in General Tab and can be left as is. In next tab you see binding information of sqlBinding. In polledDataAvailableStatement I have the following statement: SELECT COUNT(*) FROM dbo.CustomerAddress and for pollingStatement: SELECT * FROM dbo.CustomerAddress WHERE Polled = 0; UPDATE dbo.CustomerAddress SET Polled=1 WHERE Polled=0;

image

I also changed useAmbientTransaction property to False (for operations where the adapter client does not write any data to the SQL Server database, such as a Select operation, you might not want the additional overhead of performing the operations inside a transaction. In such cases, you can configure the SQL adapter to perform operations without a transactional context by setting the UseAmbientTransaction binding property to false.)

In the tab called Other I configured the credentials filling in user name and password for the account to access database on SQL Azure. After that you are ready for receive side. As I just wanted to poll data and send it to file, I also created a Send Port that uses FILE Adapter. I configured the adapter to send data to folder with a filter that subscribes to message type http://schemas.microsoft.com/Sql/2008/05/Polling/#Polling.

As you can I basically have messaging solution now that polls data from SQL Azure database table and routes the polled data as a single message to a folder on-premise (i.e. my virtual machine). Once I start the application I see after a few seconds a xml file containing data.

image

If I perform a query inside my SQL Management Studio I noticed the column Polled is 1 for every record.

image

With WCF-SQL Adapter I am able to poll a SQL Azure table and not just polling, but calling a Stored-Procedure or table operations are also possible using WCF-SQL adapter, available through BizTalk Adapter Pack 2010. I conclude that you can use WCF-SQL adapter for on-premise SQL Server and its cloud variant SQL Azure!

BizTalk Server 2010 Unleashed

This weekend I received my copy of the new BizTalk Server book BizTalk Server 2010 Unleashed.

This book, from the hands of elite members of the BizTalk community Brian Loesgen, Charles Young, Jan Eliasen, Scott Colestock, Anush Kumar and John Flanders is the second edition of a series that started with BizTalk Server 2004 unleashed and which was then concidered to be The Book when working with BizTalk Server 2004.

Although I have not yet had the chance to read it front to back, I am already delighted to see some very exciting and usefull chapters in the Advanced Topics section of the book.

The book deals with the topics of the Business Rules engine and the ESB Toolkit not only from a technical perspective but adds conceptual insights too. This alone should be reason enough to get the book at your earliest convenience.

In chapters 10 and 11 the business rules engine is explained to a level of detail I have never seen in one single place before. It is the coherent collection of snippets of information to be found all over the internet but also adds value by explaining some theoretics behind Rule-based programming.

In chapter 12, you will find the ESB Toolkit described. Again, it offers a complete overview of the technology and some basic insights into the concept of ESB, the added value of the ESB Toolkit and what you are supposed to use it for. Unfortunatly, despite being well written and well explained, it still is very theoretic with little to no handles for developers developing interest to get started. This is in contrast with most other chapters and may very well be the biggest shortcoming of the book. However, this still does not disqualify it at any time as a must-have for BizTalk consultants of any given level.

Tuesday, September 27, 2011

Windows Azure Service Bus Topics and Queues

A topic that I think BizTalk professional find appealing in Windows Azure is the Service Bus (part of Windows Azure AppFabric). Service Bus provides secure messaging and connectivity capabilities that enable building distributed and disconnected applications in the cloud, as well hybrid application across both on-premises and the cloud.

One of new features is topics and queues. Clemens Vasters did a talk on Windows Azure Service Bus Topics and Queues during Windows Build and an advanced one, which you find on his blog.

You can work with this new feature through Windows Azure AppFabric SDK V1.5 - September 2011. The version 1.5 SDK includes an updated Service Bus assembly that includes support for durable, or “brokered” messaging features, such as queues, topics, and subscriptions. These features require the .NET Framework version 4.0. (Note: If you have a dependency on the .NET Framework version 3.5, you should download or continue to use version 1.0 of the AppFabric SDK.)

If you have virtual machine available or laptop following requirements are applicable:

  • Account Requirements Before running the samples in the SDK, you must have one or more service namespaces. To create a Windows Azure AppFabric service namespace, you have to register or login Windows Azure Platform Portal.
  • Runtime Requirements The Windows Azure AppFabric SDK samples are available as Visual Studio 2010 solutions (C# and VB) and require Microsoft .NET Framework 4.0 higher to run. The SDK is supported on Windows Server 2008, Windows 7, Windows Vista, Windows Server 2003, and Windows XP operating systems. For Windows Server AppFabric integration, IIS7.5 is required.

Friday, September 23, 2011

Documenting BizTalk Environment and BizTalk Solution

When it comes to documentation with BizTalk it can be challenging task. What do and what do I not document and how do I document it. In my view there are three types of documentation when it comes to BizTalk in my opinion. That is:

  • BizTalk Environment (Design) document
  • Functional Design of BizTalk Solution
  • Technical (Design) of BizTalk Solution

BizTalk Environment (design) documentation you can described the different BizTalk environment Development, UAT and Production. In this type of document you can roughly describe the following:

  • Purpose;
  • Design Decisions regarding environments;
  • Considerations/Issues;
  • Landscape (how does it fit with in IT-Landscape in Enterprise);
  • MS BizTalk and SQL Server editions;
  • SQL Server configuration (sizing disk, clustering e.a.);
  • ICT Policy (Back up, Anti-virus, Patching, e.a.) applied in Enterprise;
  • Operating Systems;
  • Security Settings;
  • Backup and Restore (procedures e.a.);
  • BizTalk Group Configuration (clustering, availability e.a.);
  • Host configuration;

To add you in documenting the environment or take into consideration (i.e. reference material) is MSDN Microsoft BizTalk Server 2010 Operations Guide.

Functional Design you describe how solution will work, which service it will call, what type of message’s it excepts, processes and sends. You can use notation symbols found in EAI Patterns site and create a functional model for your BizTalk solution (see example below).

clip_image002

 

You can also use UML like state diagram to depict process that is implemented in BizTalk solution (see picture below).

clip_image002[6]

Besides diagrams, you will also document specifications for messages (data types, restrictions, e.a.), security settings, protocols, message patterns, and so on.

Finally Technical (design) documentation of BizTalk solution and its configuration is fairly simple as you use BizTalk documenter for it. This is tool found on codeplex that can automatically generate a document (compiled chm, and even HTML for 2010 version).You can start documenter and following screen will be shown.

image

Click Next, Select if you want to completely document entire configuration of specific BizTalk application.

image

Click Next, you can select (this is new with BizTalk 2010 documenter) SSO configuration e.a.

image

Click Next, choose output options.

image

Finally you can click Generate Documentation and documentation will generated for you in desired format.

image 

As you can see working with documenter is pretty straight forward and type of documentation can be realized with minimal effort. You can keep this documentation easy up to date when changes are made to BizTalk solution. Versioning your solution and its documentation is very important here! Documentation of BizTalk environment will take more effort and will be done in MS Word with perhaps drawings from Visio (there are BizTalk stencils, see post by Sandro). Functional documentation regarding your BizTalk solution will also require some effort, but vital before implementing your solution. Usually MS Word and Visio are used here as well.

Comments are welcome as I am interested in your view on documenting BizTalk.

Cheers!

Wednesday, September 07, 2011

BizTalk Server 2010 Patterns by Dan Rosanova

Currently I am in Toronto staying at friend enjoying some free time before heading to San Francisco, and SoCal for the Windows Build Conference. Still I find some time to write this post, which I wanted to as BizTalk Server 2010 Patterns book is there for pre-order. A new BizTalk book written by Dan Rosanova, two time MVP BizTalk Server, and over a decade over of experience delivering solutions on Microsoft platforms in different branches. It is published by PACKT and reviewed by myself, fellow MVP Randal van Splunteren and Rene Brauwers, basically an all Dutch BizTalk Technical Review team.

I enjoyed reviewing it and found that the author has put in tremendous effort together with a lot of people at PACKT and fellow reviewers to be able to publish such a fine book. I realize it may sound/read like I am shamelessly plugging/promoting this book, but I really mean it. Therefor I am going to tell you why I mean it and why as an professional integration professional, consultant or architect in Microsoft space need to buy this book.

First of all it is a great book, and in first part it extensively details the important parts of BizTalk, how to structure your solution, XLANG, architecture and its components like BAM, artefacts (i.e. orchestrations, pipelines, maps), operation architecture (i.e. scalability, availability), (unit) testing and messaging concepts. The second part the focus shifts from theory to practice and will be very appealing for professionals that develop BizTalk solutions. This part delivers you the skills to error handling, WCF-SQL Adapter capabilities, BRE (i.e. policies, vocabularies and rules), dealing with flat files and bindings, BAM, SQL Broker (Notifications), SharePoint, orchestration patterns (i.e. conveys), handling zombies and some other concepts.

Second reason is that this book neatly fits in with other BizTalk books published by PACKT like :

Third and final reason you will be a better BizTalk professional or architect, when applying the knowledge found in BizTalk Patterns book and others. Who wouldn’t want that!

4606EN_MockupCover

Book is available through Amazon and PACKT is self, so go to either of one and order it!

Cheers, and now I am off to diner.

Tuesday, September 06, 2011

Proef Ordina! Aangenaam kennis te maken

Proef Ordina! Zomer editie geeft je donderdagavond 22 september een kijkje in de keuken van Ordina. Je bent bij Ordina thuis uitgenodigd! In een ongedwongen sfeer kun je kennismaken met Ordina als werkgever en ontdekken wat ‘jouw toekomst bij Ordina’ is.

Want bij Ordina is de zomer nog niet voorbij! Samen maken we deze avond tot een groot succes: barbecue, inhoud en een spetterend optreden van talenten van de Voice of Holland Pearl, Rafaella en Bart.

Tijdens de avond krijg je onder andere een kijkje in de keuken van de Excellence Centers van Ordina. Zowel professionals als leden van het management zijn aanwezig om je te informeren over de diensten en producten die wij aan onze klanten leveren. Via demo’s, presentaties en gesprekken hoor en zie je wat voor moois er allemaal gebakken wordt in de keuken van Ordina.

Kijk voor meer info op http://www.proefordina.nl/

Friday, August 26, 2011

What new Training Kit BizTalk 2010

There is a new training kit for BizTalk 2010. It contains:

Hands On Labs

  • Creating BizTalk Maps with the new Mapper
  • Consuming a WCF Service
  • Publishing Schemas and Orchestrations as WCF Services
  • Integrating with Microsoft SQL Server
  • Integrating using the FTP Adapter
  • Developers - Create a Role and Party-based Integration Solution
  • Exploring the New Settings Dashboard
  • Monitoring BizTalk Operations using System Center Operations Manager 2007 R2
  • Administrators - Create a Role and Party-based Integration Solution

Presentations and Videos
  • Introduction and New Features Overview
  • The New and Improved Mapper
  • Updated Adapter Features
  • Trading Partner Management
  • Configuring Performance and Application Settings
  • Monitoring BizTalk Using Operations Manager

BizTalk 2010 Environment

You will be needing a BizTalk 2010 environment to do the labs and for that you have a couple of options:

a) Create an environment yourself if you access to resources like MSDN

b) Download the virtual disk contain BizTalk environment. You will need Window 2008 Hyper V for that. Workaround is that after downloading the VHD you convert it to VMDK and mount in VMWare workstation.

c) Download the BizTalk Administration Kit Virtual Hard Disk also containing training for administrators. Apply same workaround if you want it in VMWare workstation.

Success!

Tuesday, August 23, 2011

BizTalk RFID and StreamInsight Talk

Coming Monday I will present together with my colleague Wouter on BizTalk RFID and StreamInsight (Complex Event Processing). It is what my company calls a “Innoveer jij mee sessie” and these talks are about innovation. I did similar talk a few months back on BizTalk AppFabric Connect. Talks are in Dutch and hosted at or Headquarters in Nieuwegein. It is open for public and you are free to register here.

If you cannot make it the talk following resources will cover what we will talk about:

If you can make it and looking forward seeing you at presentation.

Cheers!