Category: BizTalk Mapper

Understanding the BizTalk Mapper – BizTalk 2013R2 Version

31 Mar 2016

Update: I’ve just realised the links in this article were wrong when I published it, so have updated them. I’ve decided to update my 2008 article on Understanding the BizTalk Mapper for BizTalk 2013R2. You can download the article here (in .docx and .pdf formats): Understanding the BizTalk Mapper...

Aggregating messages and removing duplicates in a BizTalk Map

20 May 2008

Aggregating messages is a fairly common task in BizTalk. By “aggregating” I mean taking two separate messages with repeating elements and combining them into a new message which contains the elements of both messages – the same as doing a Union in SQL. However, what if you want to...

System.Data.SqlXmlHelper – calling extended XPath functions from BizTalk Maps

14 Mar 2008

In this post:    Methods in the helper class    Notes on implementation    Installation Instructions    Problems with the Script Functoid    Examples of Usage    Download the code    Testing the sample map I’m not sure if this is actually of any use to anyone but if you do want to use Microsoft’s Extended...

Using Microsoft’s Extended XPath functions in BizTalk

12 Mar 2008

It’s not that well documented, but Microsoft have a bunch of extra functions you can use from XPath expressions within XSLT. You can find the documentation on them here. What isn’t made apparent is that none of them work with XslTransform: a subset of them will work with XslCompiledTransform,...

Understanding the BizTalk Mapper: Download the Article

29 Feb 2008

If you prefer to do your reading offline, then you can download the entire series of 13 posts as a single 68-page Microsoft Word document, or Adobe PDF document. Get them here:      Understanding the BizTalk Mapper.doc (1.2MB)      Understanding the BizTalk Mapper.pdf (640kB) Please let me know what you think!

Understanding the BizTalk Mapper: Part 13 – Is the Mapper the best choice for Transformation in BizTalk?

28 Feb 2008

In this section: Transformation Choices BizTalk Mapper Custom XSLT with the BizTalk Mapper External Transform Engine Transformation in code Which one should you use? Transformation Choices When performing transformations in BizTalk, you have four choices (that I can think of): Using the BizTalk Mapper Using a custom XSLT file...

Understanding the BizTalk Mapper: Part 12 – Performance and Maintainability

25 Feb 2008

In this section:Performance    Summary of Tests    Testing performance in isolation (non-BizTalk)    Performance Test Results    Measuring Memory Usage in BizTalk    BizTalk Memory Test Results    Byte Arrays    Analysing the performance results Maintainability    External XSLT    Serializable Classes    Why is it so difficult to edit code in the Script functoid?    Documentation Any large...

Understanding the BizTalk Mapper: Part 11 – Advanced Functoids

19 Feb 2008

Interestingly, all of the advanced functoids emit XSLT. No C# in sight at all. The reason for this is that the functoids in this category all perform operations best suited to trees of data i.e. XML. The only way to do this in C# would be to load the...

Understanding the BizTalk Mapper: Part 10 – Database Functoids

17 Feb 2008

This category contains both Database and Cross Referencing Functoids – but they all connect to a database to retrieve/update data. Unlike all other default functoids, these functoids all call classes/methods in external assemblies – no inline C# is emitted at all. Because of this, this is the only category...

Understanding the BizTalk Mapper: Part 9 – Cumulative Functoids

15 Feb 2008

Of the functoids in this category, only Cumulative Sum has a counterpart in XSLT v1.0 – all the others can be performed in XSLT v2.0, but not XSLT v1.0. For each functoid I’ve shown: Whether XSLT or C# is emitted Whether an XSLT equivalent exists The XSLT or C#...