Condividi tramite


Funzione di Mapping dei Valori

Il functoid di Mapping dei valori restituisce il valore del secondo parametro se il primo parametro è vero. Un uso comune del functoid consiste nel modificare gli attributi di un campo negli attributi di un record. Per appiattire una parte del messaggio di input convertendo più record in un singolo record, usare il Functoid Mapping dei Valori (Appiattimento).

La figura seguente mostra una mappa con il functoid Mapping valori usato per modificare gli attributi di un campo negli attributi di un record.

Immagine che mostra una mappa con il functoid
Funzione di Mappatura Valori

Il codice seguente mostra un messaggio di istanza di input in cui vengono assegnate coppie di nomi e valori agli attributi Name e 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 mappa precedente può convertire questo messaggio in uno in cui i valori vengono assegnati agli attributi con i nomi corrispondenti in record separati.

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

I functoid Equal testano i valori dell'attributo Name . Il primo functoid Equal verifica il valore di Name come "WindSpeed". Quando il nome è "WindSpeed", il primo functoid Equal restituisce True. In questo modo, a sua volta, consente al functoid Mapping valore di impostare il valore dell'attributo WindSpeed nel messaggio dell'istanza di output.

Eliminazione della creazione di tag vuoti

Per sopprimere i tag vuoti, usare il functoid Mapping dei valori per controllare se un tag viene creato o meno. Se il valore viene valutato su true, verrà creato il campo di destinazione; in caso contrario, il campo di destinazione non verrà creato. In uno scenario di iterazione, utilizzare un functoid logico e connetterlo al record o al campo di destinazione. Se la condizione viene valutata su false, il tag non verrà creato. Per un esempio, vedere Ciclo condizionale.

Forzare la creazione di tag vuoti

Per forzare la creazione di tag vuoti, è possibile aggiungere un valore nella proprietà Value del campo di destinazione o collegare un functoid Concatenato al campo di destinazione. In BizTalk Server è possibile forzare la generazione di tag vuoti selezionando il valore "<vuoto>" nella proprietà Value del campo di destinazione. In questo caso, il campo verrà creato con il valore vuoto.

Vedere anche

Functoid di mappatura di valori (appiattimento)
Come aggiungere functoid di mappatura dei valori a una mappa
Functoid avanzati