BITSTREAM restituisce un valore di tipo BLOB che rappresenta il
flusso di bit descritto dal campo indicato e dai relativi child. Per i messaggi in arrivo, viene utilizzata la parte appropriata del flusso di
bit in arrivo. Per i messaggi creati dai nodi
Compute, viene utilizzato il seguente algoritmo per stabilire
ENCODING,
CCSID, serie di messaggi, tipo di messaggio e formato del messaggio:
- Se il campo indicato dispone di un sibling precedente e tale sibling è la
root di una struttura ad albero secondaria che appartiene ad un programma
di analisi in grado di fornire ENCODING e CCSID, tali valori vengono ottenuti
ed utilizzati per creare il flusso di bit richiesto.
In caso contrario, vengono utilizzati ENCODING e
CCSID predefiniti del broker (ossia, quelli del relativo gestore code).
- Allo stesso modo, se il campo indicato dispone di un sibling
precedente e tale sibling è la root di una struttura ad albero
secondaria che appartiene ad un programma di analisi in grado di fornire
una serie di messaggi, un tipo di messaggio ed un formato del messaggio,
tali valori vengono ottenuti ed utilizzati per generare il flusso di bit
richiesto. In caso contrario, vengono utilizzate stringhe di lunghezza zero.
Tale funzione è generalmente utilizzate per gli scenari
warehouse del messaggio, in cui il flusso di bit di un messaggio deve
essere memorizzato in un database. La funzione restituisce il flusso di bit della parte fisica del messaggio in
arrivo, identificata dal parametro. In alcuni casi, non restituisce il flusso di bit che rappresenta il campo reale
identificato. Ad esempio, le due chiamate riportate di seguito restituiscono lo stesso
valore:
BITSTREAM(Root.MQMD);
BITSTREAM(Root.MQMD.UserIdentifier);
perché risiedono nella
stessa parte del messaggio.