Geeks With Blogs
ErwinAI - Enterprise Application Integration (EAI) blog on BizTalk 2004, Visual Studio, and application integration

General rule: when a segment or a group is mapped using the loop functoid, the underlying elements can not be mapped using functoids.

A BizTalk map is executed right-to-left, i.e. based on the target message, the mapping engine applies the mapping rules as specified.

This makes it necessary to use a loop-functoid in some cases. An element in the target message connected to an element in the source message via the loop-functoid will force the mapper to loop all source possible elements. This is great when the structures of the source and target messages differ. A special application of the loop-functoid is to connect two source elements to a single target element. This tells the mapper that both source elements should be considered as drivers for the target element.

BizTalk 2004 documentation gives a brief warning about the loop-functoid. When it is applied, no other functoids can be used within the scope of this loop-functoid. If done so, unexpected output may be the result.

Take this warning seriously, as combining loop-functoids with other functoids will in general not work. Alternatively, you might have to create multiple maps (in the same construct-shape). This way, you enforce a sequence in the map activities. Enforcing a sequence of mapping activities within a single map is not really possible: the BizTalk map can be considered as a “functional programming language”: you tell BizTalk what to do, not how to do that.

Posted on Tuesday, March 14, 2006 5:57 AM BizTalk 2004 Hints, Tips & Tricks | Back to top

Comments on this post: BizTalk 2004 - Maps containing loop and other functoids in the same scope

No comments posted yet.
Your comment:
 (will show your gravatar)

Copyright © Erwin Homan | Powered by: