为令人困惑的标题道歉,但我不确定如何最好地描述这一点。基本上,我的源架构中有一条记录,正在循环以在目标架构中创建 5 个不同的记录。
这些记录中的每一个都是根据源模式中字段的值创建的,因此可以将正确的信息映射到每个记录。在这种情况下,它是买方、供应商等的地址信息。
目标模式中的每条记录也有一个联系人记录,其中包含姓名、电话等字段。
我的任务是将源架构中的字段映射到目标架构中买家的联系人记录,而不是源架构中买家的联系方式。
买方的结构(目标模式)
正在循环的源模式中记录的结构。在目标模式中创建不同记录之前,我已将正在检查值的字段标记为顶部的蓝色,以及包含联系人详细信息的记录底部的蓝色。
我不能像往常一样映射它们的原因是 CTALoop1 在被映射的当前记录的范围内。因此,当映射买方时,我无法从不同的 NADLoop1 访问联系方式,因为它们不在循环范围内。
正如您所看到的,只有 NAD01 = PO 的 NADLoop1 包含联系方式,并且这些没有被映射到买方,因为它们超出了范围。
我如何从另一条记录映射 CTALoop1 详细信息,而不是正在循环目标模式的记录?我不会使用 XSLT 脚本,但应该说循环当前是使用可视映射器完成的,我知道在添加 XSLT 时可能会导致问题。