Great doc on BizTalk PowerShell Snap-In commands

Found this document: PowerShell Provider for BizTalk 2013 this week. Its from Francois Malgreve from Europe, and written October 2014, but most of it seems to still be applicable. The table of contents has page number, but unfortunately, I couldn’t find any page numbers on the individual pages.

Unenlist (start/stop) Orchestration in PowerShell

Suppose you want to list all orchestrations in an application, and then start, stop, unenlist, or enlist them. It’s not object oriented. You don’t say $orch.unenlist, you use the command followed by the orchestration name. There are four commandlets: 1. Enlist-Orchestartoin 2. Start-Orchestration 3. Stop-Orchestration 4. Unenlist-Orchestration <pre> #unenlist all orchestration in a BizTalk application […]

How to mute/unmute computer from PowerShell

Unfortunately, PowerShell and even WMI apparently don’t have access to the volume or mute functions. I found the program called NirCmd (download here) . The download is a zip, so created a directory called “c:\Program Files (x86)\NirCmd” and unzipped it there. The .chm help file has the syntax and command line options. Note, use “nircmdc.exe” […]

BizTalk Orchestration Error: illegal escape ‘\I’

Two Issues with Variable Initial Values When doing a build of a BizTalk Orchestration, I saw this error: <pre> illegal escape '\I' illegal escape '\C' illegal escape '\D' </pre> The issue was that I had an orchestration variable that had the following ” “inital value” (in the properties window): “e:\Integration\Config\DL.TL2000.Shipment.config. Just like in C#, changed […]

How to Call C# from a BizTalk Custom XSLT map

Background BizTalk let’s you create a map that uses XSLT instead of the functoids/GUI mapping. To do this, you click on the mapping grid, go to the “Grid Properties” window, and put in a filename for the “Custom XSLT Path”. I usually name it the same as the map file, just substituting the .xslt for […]

XSLT error: ‘xsl:case’ cannot be a child of ‘xyz’ element

I got this error when doing custom XSLT with a BizTalk map. It was a case of “brain fog”. The proper keyword is xsl:choose, not xsl:case. Other languages call this a switch or a case. I just temporarily forgot that XSLT calls it a “choose”. Example of what the xsl:choose looks like (from https://www.w3schools.com/xml/xsl_choose.asp <pre> […]

BizTalk Error btm1044 Transaction Set Control Number Mismatch

Error error btm1044: Input validation error: Non Segment level : [3] Transaction Set Control Number Mismatch Situation I was doing a test map on a BizTalk map in Visual Studio. The data was in XML format, not EDI, so I’m surprised it tried to enforce this error. I would expect that to only occur a […]

Powershell: List all elements (and entities) in a schema

Problem I started working with OAGIS schemas . The schemas are very complex and many have over 1000 entities (elements, attributes, sequences, etc…) inside. Let’s say I’m doing a BizTalk map, and I want to see if the schema has a field called “RequestedDeliveryDate”. Or maybe I want to find all the dates. You can’t […]

Advanced Insights: BizTalk Error: Finding the document specification by message type “xx” failed

If you’ve been around BizTalk for a while, like me, you most certainly have gotten this error many times. The normal solutions are: 1) Make sure you schema is deployed 2) Make sure your schema is not deployed more than once 3) Set “AllowUnrecognizedMessage” to True in the XML Disassembler. 4) Make sure the file […]

Replacement for BizTalk ImportExportRulestore.exe

What if you need to import a bunch of BizTalk vocabulary rules (.xml files) into the Biztalk BRE (Business Rule Engine)? You don’t want to do it one at time using the Business Rule Deployment Wizard. The real question, is why Microsoft didn’t provide a batch version of that tool that does all the same […]