将单个源架构元素映射到具有属性的多个元素

问题描述 投票:0回答:1

我有一个source schema如下:

Users
  Id
  Name
  Department

destination schema如下:

Employee
  Name
  Number
    number_type(attribute)

我需要做以下映射

Name ---> Name
Id ---> Number (number_type = "Id")
Department_no  --> Number (number_type = "dept")

我需要映射Id and department number i.e. 2 elements to 1 element,即Number in dest schema,但两个属性值应该不同。

输入

<Users>
    <Id>123</Id>
    <Name>abc</Name>
    <Department_no>456</Department_no>
</Users>

输出:

<Employee>
    <Name>abc</Name>
    <Number number_type = "Id">123</Number>
    <Number number_type = "dept">456</Number>
</Employee>

我如何在BizTalk中实现或者可以使用内联XSLT?

biztalk biztalk-2010
1个回答
2
投票

你几乎拥有它

Name ---> Name
Id ---> Number
Department  --> Number 

然后还将Id和Department链接到循环的functoid,转到Number

另外,为了做属性,你可以试试一些事情

Id ---> number_type 
Department -->  number_type

但是单击链接选择“复制名称”而不是“复制文本”值。

BizTalk Map image

从输入

<ns0:Root xmlns:ns0="http://Scratch.SO55049939Input">
  <Users>
    <Id>Id_0</Id>
    <Name>Name_0</Name>
    <Department>Department_0</Department>
  </Users>
</ns0:Root>

你会得到输出

<ns0:Root xmlns:ns0="http://Scratch.SO55049939output">
    <Employee>
        <Name>Name_0</Name>
        <Number number_type="Id">Id_0</Number>
        <Number number_type="Department">Department_0</Number>
    </Employee>
</ns0:Root>
© www.soinside.com 2019 - 2024. All rights reserved.