WebCast on Advanced Scenarios of WFRules

WebCast on Advanced Scenarios of WFRules

Kavita (Microsoft) will give a presentation this Friday (7/6/2007) about some advanced scenarios using rules with Windows Workflow Foundation.

During this presentation you will see screenshots of Acumen Business Rule Manager as an example of an advanced Business Rules solution!

The Rule Manager provides the additional functionality of Rule Authoring, Rule Repository Rule Verification & Validation. Only by empowering the business users with a complete business rules tool set, you will achieve a truly agile business policy that becomes transparent within your organization.

Here are the details of the Live Webcast:

Event Name: Webcast: Introduction to Windows Workflow Foundation Rules – Part II

Start Date: 7/6/07
Start Time: 1:30 PM (GMT-05:00) Eastern Time (US & Canada)
End Time: 3:00 PM (GMT-05:00) Eastern Time (US & Canada)
Audio conferencing: +1 (866) 500-6738
Participant code: 7545634
Presenter code: 9070863

Click on this link for more information regarding this Webcast

The thing they don’t tell you when integrating MOSS and Reporting Services

MOSS and reporting services integration……

After installing SQL2005 SP2 and SharepointRS.msi (Sharepoint ‘extensions’) you’re
left to do a ‘small’ amount of configuration. Basically telling the MOSS environment
where to find the Reporting Services Server.

Previously this has been a difficult step – almost a journey of discovery. Here’s
the answer.

From Central Admin->Web Application->Reporting Services Configuration Integration

From below the 1st box always gives grief – the label title and the description
seem to indicate different things.

So just to put this to bed – the Web that you have ReportingServices installed – point
off to the ReportService WebService – you’re good to go!

Failed Message Routing and Message Suspension

Failed Message Routing and Message Suspension

A long while ago, while BizTalk 2006 was in beta, I mentioned a
couple of things about the Failed Message Routing feature and how it related to adapters.
Turns out I was a bit off the mark, and wanted to leave this here in case I ever need
this information again :-).

A couple of weeks ago I spent some good time troubleshooting an adapter, and was able
to understand a bit better the relationship between this feature and an adapter’s
behavior. Indeed, as I initially stated, failed message routing depends
on the ability to suspend messages that fail the submission process.

What can make this a bit confusing is that the BizTalk Messaging Engine can decide
to suspend messages on its own without adapter intervention. In cases where this happens,
failed message routing will still work, even if the receiving adapter doesn’t actually
support suspending messages in an explicit way.

For example, under some configurations, when an XML message fails processing
in the pipeline because the XML Disassembler component rejects it, the Messaging Engine
will suspend the incoming message on its own [1]. When this happen, the adapter will
receive an status code in the batch results with the value BTS_S_EPM_MESSAGE_SUSPENDED
(0xc00001).

What’s interesting about this value is that it is a success status code;
so, from the adapter perspective, it looks as if the message submit operation completed
without errors. It can, however, be a little confusing if you’re not aware of this
behavior.

Other than this scenarios, if you want to fully support failed message routing with
your adapters, you still need to fully implement suspending messages (through IBTTransportBatch.MoveToSuspendQ()). 

[1] Unexpectedly enough, I haven’t seen this behavior with the Flat
File disassembler.

Technorati
tags: BizTalk
Server
, BizTalk
Adapters

BizTalk interview

That’s how I torture the BizTalk developer during the technical interview.
The interview is very intensive and takes 1-1.5 hour.
The main principle:
quick question – quick answer/demonstration.
The main goal:
range the main skills in all areas of the BizTalk generic development


General questions:
How does contender understand:
* the general architecture of the BizTalk:
= enumerate the main parts of the BizTalk system
= describe the main intentions of the BizTalk

* artifacts, terms (enumerate them):
= quick description
– application
– ports, groups, locations
– pipelines
– schemas
– maps
– orchestrations:
– shapes
– transactions:
– atomic
– long-running
– compensation
– exceptions
– persistent points
– assemblies
– helper .NET classes
– data bases, servers
– hosts, instances
– adapters, handlers
– subscribers, publishers
– parties
– EDI, AS2 system
– rules, vocabularies, policies
= now couple words more, what contender likes/doesn’t like in this artifact/tool. (Don’t laugh, it is a silly and VERY tough question.)

* what’s going on inside BizTalk

How develop with different parts of BizTalk:
= Describe creating the full-featured BizTalk application.
= create the thing, show what’s the most interesting inside the artifact and/or inside the tool
= quick description and couple words more, what contender likes/doesn’t like in this artifact/tool.
* VS, Source Safe
* Schema editor
– flat-files, EDI
* Mapper
– Xslt
* Orchestration Editor
* Business Rule Composer
* Tracking Profile Editor

Debugging the BizTalk Application:
= Describe debugging the full-featured BizTalk application.
* Enumerate tools:
* VS
* DebugView
* HAT, BTS Adm.Console
* NUnit, BizUnit, LoadGen
* Debugging artifacts:
– application
– ports
– pipelines
– schemas
– maps
– orchestrations
– helper .NET classes
– BR policy

Deploying the BizTalk application:
= Describe deploying the full-featured BizTalk application.
* BTSTask, BTSDeploy
* WMI scripts
* Wizards

Monitoring the BizTalk application:
2004 BTS: HAT, BizTalk Adm.Console, PerfMon
2006 BTS: HAT, BizTalk Adm.Console, PerfMon
BAM:
= Describe creating the tracking profile, activity, views.

Programming skills:
* bear route problem or similar
* bubble sort algorithm
* test-driven programming
* VS.NET tune-up
* script languages, utils
* SQL: database normalization, programming
Architecture skills:
* ways to achieve the goals:
= Say the ways to track the work times of the stages
* standard applications:
– workflow with several messages
– correlation
– convoys: parallel; sequential unified; sequential non unified
– instance vs. active subscription
– custom correlation
– FIFO
– BizTalk to/from SQL app:
– send data to SQL
– receive data from SQL
– query SQL data
– where to validate data?
– schemas, ports
– BizTalk to/from WS/HTTP apps
– SOAP ports, artifacts, wizards
* error handling in the BizTalk applications
= what else inside the BizTalk set tools the contender used and dig up those areas.

Deploying many Orchestrations – StaticStateInfo A Table To Know About

I’m doing some work with a customer this week who had an excessively large staticstateinfo table (more than 60,000 rows) in their BizTalk Message Box.  The table contains static Orchestration information, to be loaded at runtime, it has a row for
each deployed orchestration.  While the size of the table posed no immediate concerns the customer wanted to understand why the table grows bigger and how they could stop the growth.


The reason this customer had such a large number of rows is because they had several hundred Orchestrations deployed to their environment, but they ALSO had over 100 versions of each of these Orchestrations deployed to their environment.  These Orchestrations were no longer used. Because BizTalk only removes the information in the static state info table when the Orchestration version is actually removed from the group, their table was getting bigger and bigger and bigger….


Versioning of your Orchestrations is a very common and often required scenario, when implementing this you should ensure that once a version is no longer used or required it is removed from the system.  Doing this will decrease the size of the static state info table and also reduce the number of artifacts you have to manage within BizTalk.  Reducing the number of artifacts you have to manage makes administrating your system easier (especially in BizTalk 2004 where there is no ‘application’ grouping).   Therefore please make sure you consider how and when you are going to perform this undeployment right from the moment you decide to implement versioning of your Orchestrations.

Subject: [MVP] Congratulations! You have received the Microsoft MVP Award

Yeah, its official now. I have received the 2007 Microsoft MVP award for BizTalk Server. It’s been a really fun year blogging, writing white paper, launching BizTalk 24 * 7 and just generally getting more involved in the community.

I feel proud and honored to be part of the select few that Microsoft recognizes as community leaders. I’ll take this opportunity to thank each and everyone who nominated me for this award behind the scene.

 Nandri!

Saravana

BizTalk R2 class with Jon Flanders

As many of you know, Jon Flanders recently joined us here at Pluralsight. In just a couple of weeks Jon is going to be delivering our first public offering of the BizTalk R2 class. If I weren’t already committed, I’d be at this course as Jon has some great material on the new features in the upcoming R2 release including the integration with WCF / WF and all the cool RFID stuff. Be sure to check it out if you are using or plan to use R2.

TechEd Barcelona here I come!

I’ve just found out that I get to go to TechEd in November! I haven’t been there before. I’ve been to a lot of conferences but not the Microsoft conference. Do I have to say that I’m looking forward to it?

If you’re going and feel like meeting up for a BizTalk lunch, dinner or whatever don’t hesitate to drop me an e-mail.