Informazioni di riferimento sui functoid logici

 

Usare functoid logici per eseguire un'ampia gamma di operazioni logiche, spesso controllando se un particolare elemento o attributo viene creato in un messaggio di istanza di output.

Importante

Poiché Microsoft BizTalk Server usa la funzionalità sottostante di .NET Framework, i risultati prodotti da alcuni functoid logici possono variare rispetto ai functoid equivalenti nelle versioni precedenti di BizTalk Server. Ad esempio, i functoid logici fanno distinzione tra maiuscole e minuscole quando si confrontano due stringhe: "Abc" e "abc" non sono uguali. L'eccezione a questa regola è quando i functoid logici confrontano stringhe che rappresentano i valori booleani True e False:"True" e "true" sono uguali. È opportuno eseguire un test approfondito delle mappe create per avere la certezza di ottenere i risultati previsti.

Se non diversamente specificato, i functoid logici generano sempre un valore booleano, True o False. Ciò significa che non è possibile usare l'output di un functoid logico come input per un functoid che prevede una stringa, ad esempio il functoid maiuscolo , sperando di produrre una stringa di output come "TRUE". In altri termini, non è possibile collegare l'output di un functoid logico a un nodo e aspettarsi che tale campo venga compilato con un valore stringa quale "TRUE" o "FALSE" o una variante di questi ("True", "true", "False", "false" e così via).

D'altra parte, i functoid logici accettano alcuni tipi di dati diversi (valori booleani, stringhe e numeri) come valori di input. Per l'interpretazione e il confronto di tali valori utilizzano una semantica standard. È consigliabile passare due parametri dello stesso tipo di dati e determinare così le azioni seguenti:

  • Quando entrambi i parametri di input sono valori booleani, viene eseguito un confronto logico.

  • Quando entrambi i parametri di input sono numeri, entrambi vengono convertiti in valori booleani in cui i valori non zero diventano Boolean True e i valori zero diventano Boolean False, seguiti da un confronto logico.

  • Quando entrambi i parametri di input sono stringhe, viene eseguito un confronto tra stringhe con distinzione tra maiuscole e minuscole. Se appropriato, usare il functoid Maiuscolo o Minuscolo per forzare entrambe le stringhe di input nello stesso caso. Si noti che il passaggio di stringhe ai functoid AND logici, LOGICAL NOT e Logical OR non produce risultati significativi.

Sono inoltre supportati i due casi particolari descritti di seguito.

  • Se un parametro di input è un numero e l'altro è una stringa, viene eseguito un confronto tra stringhe con distinzione tra maiuscole e minuscole. Affinché il confronto sia significativo, la stringa deve essere quindi la versione stringa di un numero.

  • Se un parametro di input è Boolean e l'altro parametro di input è una stringa, usare la stringa letterale "true" (con distinzione tra maiuscole e minuscole) per rappresentare il valore booleano True e la stringa letterale "false" (con distinzione tra maiuscole e minuscole) per rappresentare il valore booleano False. Altri valori stringa per True e False non sono supportati per tutti i functoid logici , incluse le differenze solo nel caso.

Non si ottengono risultati significativi neanche passando un parametro di input booleano e uno numerico.

Per informazioni concettuali sui functoid logici , vedere Functoid logici.

Importante

Quando l'output di un qualsiasi functoid logico è direttamente collegato a un nodo dello schema di destinazione, durante l'esecuzione di una mappa di test non viene restituito un valore logico (true/false) come output. Viene visualizzato come valore vuoto. L'output di un valore logico deve quindi essere collegato solo ai functoid che accettano parametri di input logici.

La tabella seguente illustra i functoid nella categoria Logica .

Functoid logico Descrizione
Icona che rappresenta il functoid Uguale.Uguale Consente di verificare se due parametri di input sono uguali.
Icona che rappresenta il functoid Maggiore di.Maggiore Consente di verificare se il primo parametro di input è maggiore del secondo.
Icona che rappresenta il functoid Maggiore o Uguale a.Maggiore o uguale a Consente di verificare se il primo parametro di input è maggiore o uguale al secondo.
IsNil Consente di verificare se il parametro di input è Nil.
Icona che rappresenta il functoid Minore di.Meno Consente di verificare se il primo parametro di input è minore del secondo.
Icona che rappresenta il functoid Minore o Uguale a.Minore o uguale a Consente di verificare se il primo parametro di input è minore o uguale al secondo.
Icona che rappresenta il functoid AND logico.AND logico Consente di determinare se tutti i parametri di input specificati sono True.
Icona che rappresenta il functoid Data logica.Data logica Consente di determinare se il parametro di input è una data.
Icona che rappresenta il functoid Existance logico.Esistenza logica Consente di determinare se il record o il campo ad esso collegato è presente in un determinato messaggio di istanza di origine.
logico NOT functoid logico NOT Restituisce l'inverso logico del parametro di input.
Icona che rappresenta il functoid Numerico logico.Numerico logico Consente di determinare se il parametro di input è un valore numerico.
Icona che rappresenta il functoid OR logico.OR logico Consente di determinare se uno dei parametri di input specificati è True.
Icona che rappresenta il functoid Stringa logica.Stringa logica Consente di determinare se il parametro di input è una stringa.
Icona che rappresenta il functoid Not Equal.Diverso da Consente di verificare se due parametri di input non sono uguali.

Vedere anche

Come aggiungere functoid di base a una mappa