Tuesday, November 25, 2003

Pretty funny bug in the Beta of BizTalk.
In a map, if you have a loop shape and you want to do a DBLookup, there is potentially a problem if the DBLookup can not find any data for the key you provide.
If, during a loop, the DBLookup can find a data and during the next loop the DBLookup can not find one, you will get the previous data.
Apparently, the DBLookup keep a cache of data and when it can not get a data from the DB, it sends the previous one.
Finally, to work around, I have written my own DBLookup.

I hope this feature will be fixed for the release...

Wednesday, November 05, 2003

Another week spent on a BizTalk problem : How to start only one orchestration instance at a time ?

After several posts on different newsgroups, I had some answers, but a bit complicated to understand. Many thanks to Vipul Goyal on the biztalk 2004 newsgroup which answered me the more useful pattern.
Here after, what he answered :

Activate receive message M initialize correlation C;
Process-message(M)
while(true)
{
Receive message M follow correlation C;
Process-message(M)
}


Okay, but.....correlate on what ???
I tried some kind of correlation to finally come to the following solution :
Correlate on the BTS.ReceivePortName

That's it !