How to programatically retrieve data from BAMPrimaryImport using supportable API

Eventhough there are Portal UI and Excel that would allow you to query and access BAM activity data, it seems that there are some of you who would like to programmatically access/query this data from a custom application. In BizTalk Server Documentation, currently in its 2006 pre-released version, you will find information on the BAMManagementService API.  (Under Technical Reference |…


Soliciting Biztalk BAM scenarios and issues

How great it would be if every features we put in to the software is what customers need/want.   Anyway, I am creating this entry to solicit your input on how you use or plan to use BizTalk BAM.   Please response as a comment with your scnenario. Do also tell us what feature you like and dislike. Thanks,Keith…


BAM API: Using OrchestrationEventStream

Since there is not much documentation* on this yet on how to use OrchestrationEventStream (an EventStream that is in synch with Orchestration), here is a quick info on the howto: This new feature is found in Microsoft.BizTalk.Bam.XLANGs assembly.  From you BizTalk project, you can write the following in your orchestration, e.g. Expression Editor (click on the appropriate shape in orchestration to…


Sample code to retrieve server and database info of Biztalk MessageBox and PIT

Since there is a request for this, here is an example to retrieve server name and database for Biztalk MessageBox and BAM Primary Import database.  Since this is accessing internal implementation, this code is not supportable (use at your own risk) and users will be required to maintain this code on their own when doing upgrade….


Continuation scenarios with mixed of TPE-enabled and non-TPE-Enabled tracking:

It has been a while since I last blogged on this.  Let’s continue from where I left off.    Let’s pick two continuation scenarios: the first, a TPE segment continues to a non-TPE segment, and the reverse being the second.     1.      TPE-enabled segment continues to a non-TPE-enabled segment.   In this scenario, you…


DirectEventStream vs BufferedEventStream

Which EventStream to use: DirectEventStream (DES) vs BufferedEventStream (BES) Use DES when you don’t want any latency of data appearing in BAMPrimaryImport database.   Since this is synchronous call, any error will be thrown back to the calling application. Use BES if your concern is throughput.  This is particularly suited for scenarios with spurts of large…


How to write BAM Events from pipeline components.

In BizTalk 2004, to write any BAM event from the BizTalk pipeline, you will need to write some code 🙂  To simplify the learning, I will illustrate by adapting an SDK sample. Adapt the SDK CustomComponent (found in …/SDK/Samples/Pipelines/CustomComponent) sample, you will find two directories: FixMsg – the custom pipeline component (you will need to splice…