使用BizTalk映射从两个输入架构生成叉积
我正在BizTalk中使用多对一映射,以使用输入模式节点上的跨积逻辑生成的数据生成输出模式 下图描述了我所做的工作: 示例输入XML如下所示:使用BizTalk映射从两个输入架构生成叉积,biztalk,biztalk-2010,biztalk-mapper,Biztalk,Biztalk 2010,Biztalk Mapper,我正在BizTalk中使用多对一映射,以使用输入模式节点上的跨积逻辑生成的数据生成输出模式 下图描述了我所做的工作: 示例输入XML如下所示: <!-Schema1 Instance--> <Root> <Data> <ItemCode>10</ItemCode> <ItemCost>1024</ItemCost> </Data> <Da
<!-Schema1 Instance-->
<Root>
<Data>
<ItemCode>10</ItemCode>
<ItemCost>1024</ItemCost>
</Data>
<Data>
<ItemCode>20</ItemCode>
<ItemCost>2048</ItemCost>
</Data>
</Root>
<!-Schema2 Instance-->
<Root>
<Data>
<Code>10</Code>
<ShipAddr>addr11101</ShipAddr>
</Data>
<Data>
<Code>30</Code>
<ShipAddr>addr33301</ShipAddr>
</Data>
<Data>
<Code>20</Code>
<ShipAddr>addr22201</ShipAddr>
</Data>
<Data>
<Code>10</Code>
<ShipAddr>addr11102</ShipAddr>
</Data>
</Root>
所需的输出基于基于Schema1.ItemCode和Schema2.Code相等性执行的叉积。样本如下:
<!--Output Schema Instance required; Order of records is irrelevant-->
<Root>
<Data>
<Code>10</Code>
<ItemCost>1024</ItemCost>
<ShipAddr>addr11101</ShipAddr>
</Data>
<Data>
<Code>20</Code>
<ItemCost>2048</ItemCost>
<ShipAddr>addr22201</ShipAddr>
</Data>
<Data>
<Code>10</Code>
<ItemCost>1024</ItemCost>
<ShipAddr>addr11102</ShipAddr>
</Data>
</Root>
实际产量:
<ns0:Root xmlns:ns0="http://TestTO_DELETE.SchemaOut">
<Data>
<Code>10</Code><ItemCost>1024</ItemCost><ShipAddr>addr11101</ShipAddr>
</Data>
<Data><Code>20</Code></Data>
</ns0:Root>
<ns0:Root xmlns:ns0="http://TestTO_DELETE.SchemaOut">
<Data>
<Code>10</Code>
</Data>
<Data>
<Code>20</Code>
</Data>
<Data />
<Data />
<Data />
<Data />
</ns0:Root>
<ns0:Root xmlns:ns0="http://TestTO_DELETE.SchemaOut">
<Data>
<Code>10</Code><ItemCost>1024</ItemCost><ShipAddr>addr11101</ShipAddr>
</Data>
<Data><Code>20</Code></Data>
</ns0:Root>
<ns0:Root xmlns:ns0="http://TestTO_DELETE.SchemaOut">
<Data>
<Code>10</Code>
</Data>
<Data>
<Code>20</Code>
</Data>
<Data />
<Data />
<Data />
<Data />
</ns0:Root>
<ns0:Root xmlns:ns0="http://TestTO_DELETE.SchemaOut">
<Data>
<Code>10</Code><ItemCost>1024</ItemCost><ShipAddr>addr11101</ShipAddr>
</Data>
<Data>
<Code>20</Code>
</Data>
</ns0:Root>
请建议如何在这种情况下继续?我尝试了各种functoid组合以获得所需的输出模式,但没有任何效果。因此,我最终开始使用脚本functoid,这达到了我的目的。我正在发布我的发现,因为它可能对其他人有所帮助 我是这样继续的:
如果您想将mapper屏幕截图粘贴到pastebin之类的地方,我将编辑您的问题以包含图像。图像上载于