Talk About Network

Google





Software > Biz Talk NonXML > RE: BizTalk 200...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 2 of 2 Topic 918 of 978
Post > Topic >>

RE: BizTalk 2002 --> 2006 map migration issues - value flattening/looping

by "Alex"<arubalsky@[EMAIL PROTECTED] > Oct 23, 2007 at 07:36 PM

> Hi all,
> 
> 
> 
> Sorry this is a long post - hard to explain this stuff! I tried to
attach an
> image to help but it is too large to attach.
> 
> We have migrated our 2002 maps to 2006.  The inbound schemas are EDI and
> therefore are heavy on looping, which we flatten out.
> 
> As per the BTS 2006 do***entation
>
(ms-help://MS.BTS.2006/BTS06Developing/html/fc5b3ac9-28c6-41df-b779-15a8c3188528.htm):
> 
> "When you migrate a map from previous versions of BizTalk Server to
BizTalk
> Server 2006, any functoids included in the map are also migrated. If the
> functoids you migrate do not include Scripting functoids, no additional
> migration tasks are required."
> 
> Therefore, we migrated our maps and converted embedded VBScript to C#. 
From
> the above, this is the only task required for map migration.  However.
> 
> As per
>
ms-help://MS.BTS.2006/BTS06DevReference/html/e03c96d0-9215-496b-ab53-a385f1cdcae0.htm
> 
> "The Looping and Value Mapping (Flattening) functoids should not be used
> together. If both are used together, it results in a compiled map that
> assumed there is no source looping dependency for the target nodes that
are
> below the Looping functoid."
> 
> Our issue is that we were using these 2 functoids together frequently in
> 2002 without concern.  However, I can't find any 2002 do***entation
> indicating they shouldn't have been used together, as is the case with
2006.
> 
> Now we have several maps which post migration perform incorrect logic
> regarding flattening.  When we remove the looping functoid, it solves
the
> issue in some simple cases, but introduces issues in more complex
scenarios.
> 
> Specifically, we have a "DOCLoop" which repeats. We are then flattening
each
> inbound DOCLoop to a
> SINGLE output DOCLoop.  The looping functoid we are using tells the
mapper
> which output node we are trying to flatten into.
> This is required due to the source DOCLoop actually being a child of a
> repeating NADLoop, which we are wanting to map to the output but NOT
flatten
> it.  Therefore we have a situation where both inbound records repeat,
but
> only the child should be flattened.  If in BTS 2006 you cannot use these
2
> functoids together, how on earth do you tell the mapper you want the
NADLoop
> to loop (without using a looping functoid) while at the same time
flatten
> the DOCLoop which is a child of the NADLoop?
> 
> Input data:
> 
> <DOCLoop>
>       <DOC>
>         <C002_1>
>           <e1001_1>706</e1001_1>
>         </C002_1>
>         <C503>
>           <e1373>26</e1373>
>         </C503>
>         <e1220>3</e1220>
>       </DOC>
>     </DOCLoop>
>     <DOCLoop>
>       <DOC>
>         <C002_1>
>           <e1001_1>707</e1001_1>
>         </C002_1>
>         <C503>
>           <e1373>26</e1373>
>         </C503>
>         <e1220>6</e1220>
>       </DOC>
>     </DOCLoop>
> 
> Expected output data (currently output from BTS2002):
> 
> <DOCLoop>
>    <DOC>
>     <DocCodeE1001>705</DocCodeE1001>
>     <DocStatusE1373>26</DocStatusE1373>
>     <NoOfCopiesE1220>6</NoOfCopiesE1220>
>     <NoOfOriginalsE1218>3</NoOfOriginalsE1218>
>    </DOC>
>   </DOCLoop>
> 
> Once this map is migrated, the output DOC within the DOCLoop is only
being
> populated with data from the FIRST input DOCLoop record. I.e. the
subsequent
> ones are NOT being flattened in.
> 
> Result (BTS2006):
> 
> <DOCLoop>
>    <DOC>
>     <DocCodeE1001>705</DocCodeE1001>
>     <NoOfOriginalsE1218>3</NoOfOriginalsE1218>
>    </DOC>
>   </DOCLoop>
> 
> This is, from my experimentation with other maps, due to the Looping
> functoid and the Value Mapping Functoid being used together (NO LONGER
> ALLOWED).  However, when the looping functoid from DOCLoop to DOC is
> removed, the mapper now outputs the data into two DOC nodes:
> 
> <DOCLoop>
>    <DOC>
>     <DocCodeE1001>705</DocCodeE1001>
>     <DocStatusE1373>26</DocStatusE1373>
>     <NoOfOriginalsE1218>3</NoOfOriginalsE1218>
>    </DOC>
>    <DOC>
>     <NoOfCopiesE1220>6</NoOfCopiesE1220>
>    </DOC>
>   </DOCLoop>
> 
> Anyone have any ideas how to get the BTS2006 mapper to output with the
same
> structure as 2002 in this scenario?
> Has anyone else had trouble migrating maps due to flattening loops?
> This is just one example of the issues it is causing.  We are having
others
> (possibly more complex).
> 
> Sorry if too much or not enough detail this is a very hard situation to
try
> and explain.
> 
> Cheers,
> 
> Bardo
> 
> 
> 
> 

Did you find a solution to this problem?

BizTalk Utilities - Frustration free BizTalk Adapters
http://www.topxml.com/biztalkutilities
 




 2 Posts in Topic:
BizTalk 2002 --> 2006 map migration issues - value flattening/lo
"Bardo" <bry  2007-04-02 16:45:31 
RE: BizTalk 2002 --> 2006 map migration issues - value flattenin
"Alex"<aruba  2007-10-23 19:36:27 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
localhost-V2008-12-19 Fri Jan 9 2:12:33 PST 2009.