将具有重复节点输入的平面文件架构映射到具有重复节点输出的 XML 架构 BizTalk

问题描述

我正在尝试将具有多行的平面文件架构映射到具有相同多行的 XML 文件

输入文件示例:

Username,"Certification ID","Certification Name","Date completed","Date due"
n2345678,55,"Name","2 Sep 2020",2-Mar-22
n1234567,19-Mar-21

我想用 BizTalk 映射器构建的输出文件示例:

<Export>
    <Certificate>
        <Username>n2345678</Username> 
        <Date completed>2 Sep 2020</Date completed> 
        <Date due>2-Mar-22</Date due> 
        <Type>HarcodedField</Type> 
        <Kenmerk1>CalculatedField</Kenmerk1> 
        <Certification ID>55</Certification ID> 
        <Certification Name>Name</Certification Name> 
    </Certificate>
    <Certificate>
        <Username>n1234567</Username> 
        <Date completed /> 
        <Date due>19-Mar-21</Date due> 
        <Type>HarcodedField</Type> 
        <Kenmerk1>CalculatedField</Kenmerk1> 
        <Certification ID>55</Certification ID> 
        <Certification Name>Name</Certification Name> 
    </Certificate>
</Export>

现在我只能生成这个输出

<Export>
    <Certificate>
        <Username>n2345678</Username> 
        <Date completed>2 Sep 2020</Date completed> 
        <Date due>2-Mar-22</Date due> 
        <Type>HarcodedField</Type> 
        <Kenmerk1>CalculatedField</Kenmerk1> 
        <Certification ID>55</Certification ID> 
        <Certification Name>Name</Certification Name> 
    </Certificate>
</Export>

我必须使用哪种 functoid 来循环输入文件的每一行以生成一个输出文件,其中一个导出节点包含多个证书节点?

解决方法

使用工具箱中的循环形状将平面文件模式中的行映射到输出模式中的“证书”。 然后在输出模式的 Certificate 元素上设置 maxOccurs = unbounded ,它应该可以工作

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...