BizTalk映射:源记录不存在但需要映射并传递默认值

时间:2017-02-28 12:21:24

标签: xslt biztalk

我有一个源模式,其中特定记录是可选的,而在源消息实例中,该记录不存在。我需要将此记录映射到目标记录,场景就像源记录不存在一样,需要将默认值0映射到目标节点。如果确实存在,则需要按原样传递源节点值(然后进行少量算术运算)。

我尝试过使用各种functoid组合,比如逻辑存在,然后是值映射,记录计数,字符串存在等。还尝试在脚本functoid和xslt中使用c#,没有什么工作。非常难以处理映射非现有记录。我在这条记录的顶部有几条记录,它们被映射得很好,它们确实存在。只有这个问题。无论我编写多少c#和xslt代码的组合,感觉脚本functoid永远不会接受非存在记录或节点链接。请注意,如果存在该记录,可以重复多次。

使用BizTalk2013r2。

1 个答案:

答案 0 :(得分:2)

如果记录不存在(记录未来,甚至不是< record /> ),您可以使用这种简单的Functoid组合。

enter image description here

将记录链接到逻辑存在,如果存在,它将由顶部值映射发送。如果没有退出,则第二个条件为真,零点将从底部的值映射发送。