Orchestration – Secret Trick to Find where Message is Used

Suppose you have taken over someone else’s BizTalk orchestration, and it’s huge. You make some changes, and you get a compile error like this: error X2110: use of unconstructed message 'ExceptionMsg' Sometimes you can click on the error, and it will take you to the proper location. If that doesn’t work, here the “secret trick”. […]

Download BizTalk Architecture PDF Poster and Diagrams

Sometimes, links on the Microsoft and MSDN sites disappear or move, so I made a copy of the architecture diagram from BizTalk. It hasn’t been updated since then; while new features have been added, the architecture really hasn’t changed. BizTalk Server 2009 Runtime Architecture Poster NOTE: Download the above file (right-click Save-AS), then open with […]

Error: no value associated with the property ‘EDI.ISA_Segment’ in the message.

Had to fix some code today left by a prior BizTalk developer. Error: Shape name: CreateTableTypeLogMessage ShapeId: 734241d3-f9aa-41da-8696-511010d815f7 Exception thrown from: segment 2, progress 102 Inner exception: There is no value associated with the property ‘EDI.ISA_Segment’ in the message. Explanation: When you drop an EDI file, all these fields will exist, and the code would […]

EDI X12 has wrong XML Namespace in BizTalk

Scenario/Issue You drop an EDI file into a disk directory associated with a BizTalk Receive Location. Using Tracking or Routing, you see that the XML created begins with this: <pre> <ns0:X12_00401_204 xmlns:ns0="http://mycompany.com/X12/204/App2">   <ST>     <ST01>204</ST01>     <ST02>0001</ST02>   </ST> </pre> but you are expecting the namespace to look like this: <pre> <ns0:X12_00401_204 xmlns:ns0="http://mycompany.com/X12/204/App"> </pre> Question Why is the […]

BizTalk Map – Trick for Reusing C# Functions

In a BizTalk map, you can add scripting functoids without connecting them to anything. They can contain functions, as shown below. Note 1: You must add a constant for each variable, so if you have 3 parameters, then add three constants values on the “Functoid Inputs” tab. Note 2: They will have a warning icon […]

Quick Summary XREF to All My BizTalk SQL Commands

Over time, I have found or developed several T-SQL (Transact-SQL) commands that you can run to help cross reference (XREF) various BizTalk entities. Most of these run against the BizTalkMgtmDB database. Here is a list of them, so they are easy to find: BizTalk SQL Queries 1. Simple list of Receive Ports and Receive Locations […]

BizTalk 2020 – “BizTalk” Project Templates do not appear in Visual Studio 2019

Issue As shown below – you type in “biztalk” and search, and no matches are found, even though installed BizTalk 2020 after Visual Studio 2019.   Solution Open Visual Studio 2019 with “no code” option, i.e. you don’t have to create a project to get VS2019 to open. From the menus at the top, click […]

SendPort ‘xxx’ is being referenced by one or more TPM Parties.

Trying to delete a Send Port, you get this error: SendPort ‘sp_ABC’ is being referenced by one or more TPM Parties. Please remove the Send Port reference(s) from the parties and retry deleting the Send Port (Microsoft.BizTalk.ExplorerOM) By the way, TPM stands for “Trading Partner Management”. Explanation When you use EDISend Pipeline, BizTalk needs to […]

Access EDI ISA/GS Header Fields In a BizTalk Orchestration

How can you get values from the ISA/GS into variables in your BizTalk Orchestration? Link to a good easy to read summary of ISA/GS segments in EDI: https://www.availity.com/documents/ISA-IEA-GS-GE_QuickReference.pdf I have included screen shots of their PDF here: To get the Intellisense and compile/build to work, you will have to add a reference to Microsoft.BizTalk.Edi.BaseArtifacts.dll. // […]

The published message could not be routed because no subscribers were found.

Back to the basics of BizTalk. Even with years of experiences, sometimes you do something “stupid” and can’t figure out the error: <pre> The published message could not be routed because no subscribers were found. This error occurs if the subscribing orchestration or send port has not been enlisted, or if some of the message […]