Brian Loesgen's Blog

BizTalk, Enterprise Service Bus (ESB), SOA, Oslo, San Diego .NET User Group, San Diego Software Industry Council Web Services... and stuff!

  Home  |   Contact  |   Syndication    |   Login
  105 Posts | 0 Stories | 79 Comments | 84 Trackbacks

News

Tag Cloud


Archives

Post Categories

Image Galleries

My Blog Friends

Well now that my part of the SAMS BizTalk 2004 Unleashed book's done, I'm bored.

So, I wrote a little utility that we at Neudesic could have used on a couple of our BizTalk projects, and I'm thinking others may need it as well. So, say hello to "ServiceWindows".

What is ServiceWindows?
ServiceWindows is a utility that allows you to turn BizTalk 2004 receive locations on and off at intervals specified in a configuration file.

What problem does ServiceWindows solve?
BizTalk Server 2004 provides a powerful business process automation capability via orchestrations. However, you may only want these processes to run during defined service windows. An effective way to control execution of orchestrations is by controlling the receive locations that trigger instantiation of the process, effectively “turning the tap on and off”.

BizTalk Server 2004 allows you to specify a single service window for a receive location (eg: “process messages between 1:00AM and 2:00AM every day”). ServiceWindows extends this capability by allowing you to turn on receive locations at specified intervals, and automatically disable them after a specified duration has elapsed (eg:”Enable this receive location every hour, and keep it enabled for 10 minutes”).

How does it work?
ServiceWindows uses the BizTalk Server Explorer Object Model, and I manipulate the receive location state through that.

Is it easy to use?
You betcha! Here's an example:

ServiceWindowManager mgr = new ServiceWindowManager(@"C:\Visual Studio Projects\BTSServiceWindows\BTSServiceWindows\ServiceWindows.xml");
mgr.LoggingEnabled = true;
mgr.StartProcessing();

There are two sample programs included with it, a console app and a sample Windows service, to show you how to use it.

You can see the readme here.

You can download ServiceWindows here.

Enjoy!

posted on Friday, June 25, 2004 8:57 PM

Feedback

# re: New utility for BizTalk 2004: ServiceWindows 8/16/2004 10:29 PM Nikolai
Do you think it would be possible to extend this to specify days to apply a service window to? i.e. Monday 5am, and Wednesday 5am, instead of everyday at 5am?

i.e.
<?xml version="1.0" encoding="utf-8" ?>
<ServiceWindows connection="Integrated Security=SSPI;database=BizTalkMgmtDb;server=.">
<ReceiveLocation port="EDIfromContoso" name="PickupEDIFromContoso" >
<Interval interval="10000" duration="10000" startAt="1:10" active="false" dayofweek="1" />
<Interval interval="10000" duration="10000" startAt="1:10" active="false" dayofweek="3" />
</ReceiveLocation>
</ServiceWindows>

I guess you might not be able to given that BTS2004 doesn't support this in the UI at all

# re: New utility for BizTalk 2004: ServiceWindows 8/21/2004 10:01 AM Brian Loesgen
That's a great idea Nikolai. I'm actually working on an update right now that would be able to incorporate this (so I'll use your requirement as an example usage :))... Stay tuned. I shd be done in a few days.

Post Feedback

Title:
Name:
Email: (never displayed)
Url:
Comments: 
Please add 7 and 2 and type the answer here: