Compartir a través de


Asignación de valores (functoid)

El functoid Asignación de valores devuelve el valor de su segundo parámetro si su primer parámetro es true. Una utilización común del functoid es cambiar los atributos de un campo a los atributos de un registro. Para aplanar una parte de un mensaje de entrada mediante la conversión de varios registros en un único registro, use el functoid Asignación de valores (acoplamiento).

En la ilustración siguiente se muestra un mapa con el functoid Asignación de valores que se usa para cambiar los atributos de un campo en los atributos de un registro.

Imagen que muestra un mapa con el functoid Asignación de valores usado para cambiar los atributos de un campo en los atributos de un registro.
Asignación de functoid de asignación de valores

En el código siguiente se muestra un mensaje de instancia de entrada en el que se asignan pares de nombres y valores a los atributos Name y Value .

<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>  

La asignación anterior puede convertir este mensaje en otro en el que los valores se asignen a atributos con los correspondientes nombres en registros separados.

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

Los functoids Equal prueban los valores del atributo Name . El primer functoid Equal comprueba el valor de Name es "WindSpeed". Cuando el nombre es "WindSpeed", el primer functoid Igual devuelve True. Esto, a su vez, permite que el functoid De asignación de valores establezca el valor del atributo WindSpeed en el mensaje de instancia de salida.

Suprimir la creación de etiquetas vacías

Para suprimir etiquetas vacías, utilice el functoid de asignación de valores para controlar si una etiqueta se crea o no. Si el valor se evalúa como, se creará el campo de destino; de lo contrario, el campo de destino no se creará. En un escenario de bucle, utilice un functoid lógico y conéctelo al registro o al campo de destino. Si la condición se evalúa como false, la etiqueta no se creará. Para obtener un ejemplo, consulte Bucle condicional.

Forzar la creación de etiquetas vacías

Para forzar la creación de etiquetas vacías, puede agregar un valor en la propiedad Value del campo de destino o vincular un functoid Concatenate al campo de destino. En BizTalk Server, es posible forzar la generación de etiquetas vacías seleccionando el valor "<vacío>" en la propiedad Value del campo de destino. En este caso, el campo se creará con el valor vacío.

Consulte también

Functoid de asignación de valores (sin formato)
Cómo agregar functoids de asignación de valores a una asignación
Functoids avanzados