如果没有 child,Biztalk 删除元素

Biztalk remove element if no child

如何从输出文件中删除空元素?

我有一个这样的输入文件:

 <Root>
  ...
   <Header>
    <Rows>
      ...
     </Rows>
     <Rows>
      ...
     </Rows>
   </Header>
   ....
 </Root>

映射到这个:

<Root>
  ...
  <OutHeader>
    <OutRows>
     ...
     </OutRows>
     <OutRows>
      ...
     </OutRows>
   </OutHeader>
   ...
 </Root>

没问题,但是当输入文件如下所示时:

<Root>
  ...
   <Header>
   </Header>
   ....
 </Root>

它映射到

<Root>
  ...
  <OutHeader>
  </OutHeader>
   ...
 </Root>

那是无效的(我无法更改架构)

所以如果 Header 元素没有 child 元素,则 OutHeader 元素不能在输出文件中

如何使用 Biztalk 映射中的 functoid 来做到这一点?

已编辑-

  1. Link <Rows> 到第二个参数为 1 的 Index Functoid。
  2. Link 逻辑存在 Functoid 的索引 Functoid。
  3. Link 逻辑存在 Functoid 到 <OutHeader>.

这基本上意味着仅当第一个元素存在时才创建 <OutHeader>