Feed Icon  


  • Bryant Likes
  • Send mail to the author(s) E-mail
  • twitter
  • View Bryant Likes's profile on LinkedIn
  • del.icio.us
Get Microsoft Silverlight
by clicking "Install Microsoft Silverlight" you accept the
Silverlight license agreement

Hosting By

Hot Topics


Open Source Projects



Previous Page Page 2 of 3 in the BizTalk category(RSS) Next Page

BizTalk Stuff from the Deep Dive Master

Posted in BizTalk at Wednesday, June 8, 2005 3:48 AM Pacific Daylight Time
Marty Wasznicky, who was doing the BizTalk Deep Dive training at the local Microsoft Santa Monica office and who is a former colleague of mine, has started posting lots of good stuff to his blog in the last two days. There are some good posts about Dynamic Mapping,  App Domains, and he's posted the slide decks and sample projects as well. Go check it out!

BizTalk's Cache Refresh Interval

Posted in BizTalk at Thursday, June 2, 2005 11:49 AM Pacific Daylight Time

If you're enabling/disabling receive locations in BizTalk using the BizTalk object model explorer (example here) then you need to be aware of the Cache Refresh Interval property. The importance of this property is explained here:

The receive location is disabled after the cache refresh interval passes. The default value for the cache refresh interval is 60 seconds. For more information about setting the Cache Refresh Interval property, see About the BizTalk Group.

What this means is that when you make a change, such as disabling a receive location, it may take up to 60 seconds before that change is actually realized (hence Jon says it tends to be 30 seconds on average). This can make your tests quite long (since you are testing your code right?). In order to shorten this you can open up the BizTalk Server Administration and select the properties of your BizTalk Server. In that dialog you can set this to something that make sense for your environment.


Hopefully this saves someone some time as it took me awhile to catch on to what BizTalk was doing...

BizTalk Expression Quiz

Posted in BizTalk at Sunday, May 15, 2005 4:07 PM Pacific Daylight Time

One of the things I've been working on with BizTalk is trying to understand the best way to accomplish things like logging. In my journey to understand this I came accross something that I think is rather interesting.

What is the difference in the number of lines of code executed between the following two expression shapes?


 Variable_1 = 1;


 Variable_1 = 1;
 Variable_1 = 2;

Any ideas? I can tell you that the answer is not one. Based on my spelunking the answer is somewhere closer to 20. I think it is hard to qualify a "line of code" and it is hard to measure external calls, but in my research I was at well over 20 lines of code. Basically BizTalk saves its state and updates its status for each line of code in an expression shape. This makes for a case to use some custom code that BizTalk calls since the overhead per line of code is pretty high.

Testing Custom Flat File Disassemblers

Posted in BizTalk | Test-Driven Dev at Sunday, May 15, 2005 4:01 PM Pacific Daylight Time

At my current project for Avanade I've been working with Hisham (who is also my Career Manager and whose blog I read before I even knew about Avanade) and we've been doing a lot of BizTalk stuff. As he stated here, BizTalk development, without the help of some external tools, can be very time consuming just in the build->deploy->bind->enlist->start process of running BizTalk. One of the pieces that I've been working on is a custom Flat File disassembler. I found that testing my component within BizTalk was very time consuming. I also knew that there was a utility in the SDK for testing flat file disassembly (FFDasm.exe) which uses the standard flat file disassembler (FFDasmComp). So, with a little help from Reflector, on my flight to Seattle I hacked together a new version of the utility (FFDasmEx.exe) which accepts an additional parameter for the name of the custom pipeline component that you would like it to use instead of the standard disassembler.

This makes testing a breeze as you can simply compile your pipeline component assembly, copy it to the Pipeline Components folder, and then run your test. You can easily debug your component using this same method but running the FFDasmEx project in debug mode.

If anyone is interested let me know and I'll zip up the project and post it somewhere. However, if you have a copy of Reflector you can probably put it together yourself in about ten minutes.

Removing MSMQT from BizTalk 2004

Posted in BizTalk at Tuesday, May 10, 2005 7:51 AM Pacific Daylight Time

When you add the MSMQT adapter to BizTalk 2004 it asks  you “are you sure?” because this cannot be undone. Well I was pretty sure I wanted it, but later on it turns out that I really needed just MSMQ to work (which won't work with MSMQT unless you jump through some hoops).

In my searches I came across this solution which has a disclaimer:

Do this at your own risk; I do not know of any possible side effects of doing this (although I haven't noticed any yet) as opposed to doing the unconfigure/configure. You probably don't want to do this in a production machine, though!

So I was wondering (I'm not going to try it since I'm already in the process of rebuilding BT on my dev box) if anyone has any experience with this. It seems like a good hack, but what are the side effects? Are there any? Why did MS make the MSMQT setup so brittle....

Career Opportunity

Posted in Sql and Xml | Reporting Services | SharePoint | BizTalk | General | ASP.Net/Web Services | Avanade at Thursday, May 5, 2005 7:44 AM Pacific Daylight Time

I've been working for Avanade for about two months now, and I really like it. I've gotten a few emails from people who are interviewing with the company and want to know what it is like. It is a great company to work for, especially if you like working with Microsoft technology. In fact, Gartner just released a publication that listed Avanade as one of the “cool” vendors (along with three other companies). The big issue with working for Avanade is that you will travel. How much depends on what region you work for. The region that I work for, the west region, has a lot of work in each area so the traveling I do is all close by (at least so far).

The west region is also looking to hire developers (especially in SoCal). So if you live in the Western US, like to work with MS technologies, and don't mind some travel, this is a great opportunity. The company is mainly looking for .NET developers with skills in other MS products like SQL Server, BizTalk, SharePoint, Reporting Services, etc.

If you're interested, send your resume to me and I'll pass it along to the right person.

Some of the benefits of working for Avanade include things like $1000 every six months to spend on gadgets and a trip to one major conference per year. They want all developers to get MCSD certified and will pay for your training materials and exams (pass or fail). You are also allocated three weeks per year for training and this is allocated in the same way that vacations are allocated. Plus you get to work with a bunch of great people and have a lot of fun.

Here is a basic job description:

Short Description : Join Avanade and you will be part of a premier consulting organization focused on the Microsoft
enterprise suite. You will help build reliable, scalable solutions.

Description : Avanade is the only global technology integrator dedicated to the Microsoft enterprise platform. Avanade helps customers use Microsoft technology to cut costs and improve business results through standardization, consolidation, and integration of IT infrastructure and applications.

As a Developer, your focus will be developing and testing mission critical enterprise solutions. You will build management, technical and planning skills by participating in internal development projects. You will improve your abilities to think creatively and design solutions.


  • Participate in business requirements gathering and rules definition.
  • Participate in design of desktop and web-based application architecture.
  • Develop components/modules/scripts implementing business process rules.
  • Perform code walk-through of software components.
  • Document software components sufficient for on-going support and enhancement.
  • Effectively communicate status of tasks and projects

Minimum Requirements:

You will be degree qualified with excellent communication skills and will have hands-on experience working on component based applications in a distributed environment. Qualified candidates should possess:

  • 1+ year technology consulting
  • 2 to 4+ years as a programmer
  • 1+ years experience with C#
  • Deep MS platform Skills
  • .NET Framework
  • Full lifecycle experience developing large scale, scaleable applications
  • Willing to travel

Preferred Requirements:

  • MCSD Certification


The Carrot

Posted in Sql and Xml | Reporting Services | BizTalk | ASP.Net/Web Services at Wednesday, April 27, 2005 4:49 AM Pacific Daylight Time

Are you ready to learn about SQL Server 2005, Visual Studio 2005, and BizTalk 2004/2006, but you lack the motivation required to take on this monstrous task?

I present to you: the carrot.

[L]ast years developer competition was so much fun we are doing it again but bigger. This time in conjunction with SQL Server 2005 and Visual Studio.NET there is a joint connected systems developer competition.  The top prize is only $50,000.  Check out the details here.

Nice. Now you just need to come up with an entry. That shouldn't be too hard as there are fifteen categories:

    1. Best Extension of a SQL Server 2005 database using the SQLCLR
    2. Best integrated application using XML in SQL Server 2005 and Visual Studio 2005
    3. Best Application using the Business Intelligence features of SQL Server 2005
    4. Best extension of a video gaming experience using Visual Studio 2005 and SQL Server 2005
    5. Best I-Worker solution using Microsoft Office System and Visual Studio Tools Office
    6. Best integrated/SOA application utilizing SQL Server 2005, Visual Studio 2005 and BizTalk
    7. Best SmartPhone application using Visual Studio 2005 and SQL Server Mobile Edition
    8. Best Tool to provide additional functionality to SQL Server 2005
    9. Best Occasionally Connected Smart Client Application using SQL Server 2005 Data
    10. Best use of Managed DirectX, Visual Studio 2005 and SQL Server Express
    11. Best Visual Studio 2005 PowerToy utilizing SQL Server Express
    12. Best extension of Visual Web Developer and the Personal Web Site Starter Kit
    13. Best sample demonstrating key functionality not already included in the BizTalk Server SDK
    14. Best BizTalk adapter not already supplied by Microsoft or other adapter vendors
    15. Best implementation of a generic pattern on the BizTalk Server platform

I think those categories cover just about every possible app you could build and they probably will help you think up some connected app to create as an entry. Good luck and have fun!

BizTalk 2004 SDK Refresh Released

Posted in BizTalk at Friday, April 2, 2004 1:02 AM Pacific Standard Time

Get it here.

Note: It seems you must have BizTalk 2004 installed in order to install the SDK.

Thoughts on .Net

Posted in Sql and Xml | Reporting Services | SharePoint | BizTalk at Tuesday, March 23, 2004 11:45 PM Pacific Standard Time

If you're one of the handful of people who read my blog, then you probably noticed that I've been all over the map lately. Reporting Services, SharePoint, and now BizTalk. This is due to the work I've been doing at Countrywide. It has been a lot of fun to learn all these new technologies.

Now I'm no expert on these new technologies, but it seems like they have been fairly easy to pick up. I was reflecting on this last night as I was sleeping. I came to the conclusion that the reason it has been pretty easy to learn these technologies is because they are .Net based and integrate with Visual Studio. So now that I'm becoming proficient in .Net, it has become easier to pickup these new .Net based technologies.

Don't believe me? Think back to the VB6 days (not too long ago). I remember going through the VB6 Win32 API tutorial. It seemed like each new technology that came out you had to dig through the SDK to even begin to understand the product and even then you probably would still get the calls wrong. Maybe it's just gotten easier because I've been doing this longer, but maybe .Net is making a difference.

Now we just need Yukon Beta 2 to be released so we can see how much of a difference it makes having .Net in the database...

Update: Just reading Overview of Native XML for Microsoft SQL Server 2005 and thinking that even though you can create HTTP Endpoints without using .Net, they are still easier to understand because of .Net. .Net made web services (and HTTP Endpoints for that matter) something the average developer has a basic understanding of.

Also the article states that “SQL Server 2005–native Web services require Microsoft Windows Server™ 2003 as the operating system, because they rely on the kernel mode http driver http.sys that this version provides”. But after reading Don Box's comment on XPSP2 about HTTP.SYS I'm wondering if you could run this on XPSP2. Maybe it is the “kernel mode” that XPSP2 doesn't support. Anywho, the CREATE HTTP ENDPOINT format looks somewhat similar to Indigo's self-host syntax.

Hello BizTalk File Transfer

Posted in BizTalk at Tuesday, March 23, 2004 11:05 AM Pacific Standard Time

This is a very basic example that will walk you through the steps to set up a simple file transfer using BizTalk Server 2004. This example assumes that you already have BizTalk setup correctly (unlike my first setup snafu). I'm running on Windows Server 2003 and running BizTalk Server 2004 Developer Edition.

I'm trying to start to follow the xp programming techniques, so when I started a new BizTalk project I decided to try the simplest thing first and just do a file transfer. Below are the steps I came up with for transferring a file just by using the BizTalk Explorer pane in Visual Studio.

1) In the BizTalk Server Explorer, expand your server by clicking the plus next to it.

2) Right click “Receive Ports” and select “Add Receive Port...” from the context menu as shown below.

3) In the Create Receive Port dialog, leave “One-Way Port” selected and click OK.

4) In the One-Way Receive Port Properties dialog, change the name to “ReceivePort_Static” as shown below.

5) Click OK.

6) Back in the BizTalk Explorer panel, under the ReceivePort_Static port, right click “Receive Locations” and select “Add Receive Location...” from the context menu as shown below.

7) In the Receive Location Properties dialog perform the following actions:

a) Change the Name: to “ReceiveLocation_Static“.

b) Change the Transport Type to “FILE”.

c) Change Receive Handler to “BizTalkServerApplication“. Note: if this option isn't available then your server might not be configured correctly. Read the documentation section on Configuring your server.

d) Change the Receive Pipeline to “Microsoft.BizTalk.DefaultPipelines.PassThruReceive”.

e) Finally, click in the Address (URI) field and then click the “...” button. For the receive folder you will need to put the path to a folder you want BizTalk to pickup the files from. I created a folder specifically for this at c:\tests\StaticTest\Receive. I would suggest you do the same. The file mask for this example will be "*.txt". This setup is shown below.

f) Click Ok on the File Transport Properties dialog. Your Recieve Location Properties Dialog should look something like the following.

g) Click Ok on the Receive Location Properties dialog.

8) Back in BizTalk Explorer, right click “Send Ports” and select “Add Send Port...” from the context menu as shown below.

9) In the Create New Send Port dialog, leave “Static One-Way Port” selected and click OK.

10) In the Static One-Way Send Port Properties dialog, perform the following actions:

a) Change the Name: to "SendPort_Static".

b) Change the Transport Type to "FILE".

c) Click in the Address (URI) field and then click the "..." button. For the destination folder you will need to put in the path to a folder you want BizTalk to deliver the files to. I created a folder specifically for this at c:\tests\StaticTest\Send. The file name for this example is %MessageID%.txt. This is shown below.

d) Click Ok on the File Transport Properties dialog. The Configure Static One-Way Send Port Properties dialog should look like the following.

e) Next click on the "Send" folder in the tree view control on the dialog. Change the Send Pipeline to "Microsoft.BizTalk.DefaultPipelines.PassThruTransmit" as shown below.

f) Next Click on the "Filters & Maps" folder in the same tree view control and then click on "Filters". Click where it says "Click here to add a new row!" In the Property dropdown select the "BTS.ReceivePortName" and in the Value field put "ReceivePort_Static" (without the quotes). This is shown below.

g) Click Ok on the Configure Static One-Way Send Port Properties dialog.

11) Back in the BizTalk Explorer, right click the ReceiveLocation_Static and select "Enable" from the context menu.

12) Next right click the "SendPort_Static" and select "Start" from the context menu.

At this point, assuming everything was done correctly, you should be ready to experience some of the BizTalk magic. Drop any file with the txt extension into the folder you specified on the receive location and it will quickly disappear. If you next look in the folder you specified for the send port and there should be a new text file there which is a copy of the file you dropped in the receive location. Magic!

Hopefully you will find this very simple example to be useful.

Previous Page Page 2 of 3 in the BizTalk category(RSS) Next Page