New BAM Management Utility (bm.exe) Commands

I’m really exited about all the great new features that we’ve put in BAM in BizTalk Server 2006 but I figured out that we’ve made some changes to the bm.exe commands and you need to get familiar with those changes before everything else.

The information below is based on the Community Technical Preview (CTP) build of BizTalk Server 2006 that was distributed to TechEd attendees at TechEd USA 2005 in Orlando. Some things might change before we ship the betas and the product. If you haven’t got a copy of the CTP build yet, don’t stop reading but get ready to try the new features soon when we ship Beta 1.

To see the list of all commands just run bm.exe without and parameters. To get detailed help for a specific command run:

bm.exe help -Command:<command>

For example:

bm.exe help -Command:deploy-all

Note that there is no space between “-Command:” and “deploy-all”. And don’t worry – if you get any command wrong, you will see an error message along with the detailed help for that command and a few examples to help you fix your input.

Here is a table with the bm.exe commands in BizTalk Server 2004 and their equivalents in BizTalk Server 2006.

BizTalk Server 2004 BizTalk Server 2006 Example
bm.exe dbsetup bm.exe setup-databases bm.exe setup-databases -ConfigFile:BamConfiguration.xml
bm.exe deploy bm.exe deploy-all bm.exe deploy-all -DefinitionFile:SalesManagerView.xls
bm.exe undeploy all bm.exe remove-all bm.exe remove-all -DefinitionFile:SalesManagerView.xls
bm.exe undeploy view bm.exe remove-view bm.exe remove-view -Name:SalesManagerView
bm.exe undeploy #1 bm.exe remove-view

bm.exe remove-activity

bm.exe remove-view -Name:SalesManagerView

bm.exe remove-activity -Name:PurchaseOrder

bm.exe add bm.exe add-account bm.exe add-account -AccountName:domain\user -View:SalesManagerView
bm.exe remove bm.exe remove-account bm.exe remove-account -AccountName:domain\user -View:SalesManagerView
bm.exe list bm.exe get-accounts bm.exe get-accounts -View:SalesManagerView
bm.exe listchanges bm.exe get-changes bm.exe get-changes

Note that the BAM configuration file is now passed only to the setup-databases command. You can use the “-Server:” and “-Database:” parameters with almost all commands to specify BAM Primary Import database to be used for the command or you can specify the default BAM Primary Import sever and database in the bm.exe configuration file (bm.exe.config). If you don’t specify either of these, the defaults will be used – server locahost and database BAMPrimaryImport.

For example:

bm.exe deploy-all -DefinitionFile:SalesManagerView.xls -Server:SalesServer -Database:BamSalesPI

The new remove-all command will remove all activities and views defined in the BAM definition file. You can use the remove-view or remove-activity commands to remove a single view or activity.

The new deploy-all command will create BAM live-data Excel workbook in the same directory in which the Excel file with the activity and view definitions resides.

One thing I really like is that now you don’t need to export the BAM definition XML from the BAM Excel spreadsheet to use TPE. You can simply deploy your BAM Excel spreadsheet using bm.exe and TPE will get the activities definitions directly from the BAM Primary Import database. Then you can map the activities checkpoints to BizTalk orchestrations and start tracking your data.

I hope this overview will get you started quickly. Next I will write about the new update commands as well as the alerting commands in bm.exe and the distributed BAM deployment. Sounds exciting?