Geeks With Blogs

Connected Systems Chilled Out Blog Hanging stuff together in a meaningful way with some fun added

This is a problem discovered by my colleague  Dave Robinson at Solidsoft:

This is more something to be aware of. I would not necessarily say it was a bug but it’s interesting none the less. We have a map which wants to create an output based on

- One field existing AND

- One field NOT existing

Based on the screen shot below, you can see the “&” functoid forms the creation of the ContactPhones. Behind the scenes the creation of the ContactPhones is done via a for loop “<xsl:for-each select="InputMessagePart_1/Details/Contacts">”

For this instance our output record was created successfully

clip_image001

In the second case where our output was not created, I was scratching my head for a few moments. Basically the map was the same but the order of the inputs into the “&” functoid is the other way round, i.e. the NOT was first. In this case the creation of the ContactPhones is done via the following for loop “<xsl:for-each select="InputMessagePart_0/ns0:FWTOrganisation/ContactPhones">”. In this case, this record does not exist so our output is never going to be created.

clip_image002

So if you are doing something like this, you need to ensure that the first input into the “&” is the field which you want to exist. Otherwise you will not get the expected output.

Posted on Friday, September 10, 2010 9:26 PM | Back to top


Comments on this post: BizTalk mapping issue/bug?

# re: BizTalk mapping issue/bug?
Requesting Gravatar...
boot on sale now ! find yours here!!
Left by pink boots on Aug 11, 2011 1:05 PM

Your comment:
 (will show your gravatar)


Copyright © BizTalk Visionary | Powered by: GeeksWithBlogs.net