“值映射”Functoid

如果第一个参数为 true, 则值映射 functoid 返回其第二个参数的值。 该 functoid 通常用于将字段的属性更改为记录的属性。 若要通过将多个记录转换为单个记录来平展输入消息的一部分,请使用 值映射 (平展) Functoid

下图显示了一个映射,该映射具有 值映射 functoid,用于将字段的属性更改为记录的属性。

显示具有值映射 functoid 的映射的图像,用于将字段的属性更改为记录的属性。
“值映射”Functoid 映射

以下代码显示了一个输入实例消息,其中名称和值对分配给 NameValue 属性。

<ns0:Root xmlns:ns0="http://ValueMapping.WeatherIn">  
    <Record>  
        <Field Name="WindSpeed" Value="5"/>   
        <Field Name="Temperature" Value="20" />  
    </Record>  
    <Record>  
        <Field Name="WindSpeed" Value="15" />  
        <Field Name="Temperature" Value="18" />  
    </Record>  
</ns0:Root>  

上面的映射可以将此消息转换为以下消息,其中值分配给独立记录中具有相应名称的属性。

<ns0:Root xmlns:ns0="http://ValueMapping.WeatherOut">  
    <Record WindSpeed="5"/>  
    <Record Temperature="20"/>  
    <Record WindSpeed="15"/>  
    <Record Temperature="18"/>  
</ns0:Root>  

Equal functoid 测试 Name 属性的值。 第一个 Equal functoid 测试 Name 的值为“WindSpeed”。当 Name 为“WindSpeed”时,第一个 Equal functoid 返回 True。 这反过来又允许 值映射 functoid 在输出实例消息中设置 WindSpeed 属性的值。

取消创建空标记

若要取消空标记,可以使用“值映射”functoid 控制是否创建某个标记。 如果值的计算结果为 True,则将创建目标字段,否则,不创建目标字段。 在循环方案中,使用“判断”functoid 并将其连接到目标记录或目标字段。 如果条件的计算结果为 false,则不创建标记。 有关示例,请参阅 条件循环

强制创建空标记

若要强制创建空标记,可以在目标字段的 Value 属性中添加值,或将 Concatenate functoid 链接到目标字段。 在BizTalk Server中,可以通过在目标字段的 Value 属性中选择“空>”<值来强制生成空标记。 在这种情况下,将使用空值创建字段。

另请参阅

“值映射(平展)”Functoid
如何向映射添加“值映射”Functoid
高级 Functoid