BITSTREAM retorna um valor de tipo BLOB que representa o
fluxo de bits descrito pelo campo dado e por seus filhos. Para mensagens de entrada, a parte apropriada do fluxo de bits de entrada é
utilizada.
Para mensagens construídas por nós Compute, o algoritmo a seguir é utilizado
para estabelecer ENCODING, CCSID, o conjunto de mensagens, tipo de mensagem e
formato de mensagem:
- Se o campo endereçado tiver um irmão anterior e se esse irmão for
a raiz de uma subárvore que pertence a um analisador capaz de
fornecer um ENCODING e um CCSID, esses valores serão obtidos e
utilizados para gerar o fluxo de bits solicitado.
De outra maneira, são utilizados o ENCODING e CCSID padrão do intermediário (ou seja, os de seu gerenciador de filas).
- De maneira semelhante, se o campo endereçado tiver um irmão
anterior e se esse irmão for a raiz de uma subárvore que pertence a
um analisador capaz de fornecer um conjunto de mensagens, um tipo de
mensagem e um formato de mensagem, esses valores serão obtidos e
utilizados para gerar o fluxo de bits solicitado.
Caso contrário, são utilizadas cadeias de comprimento zero.
Geralmente, esta função é utilizada para situações de
armazéns de mensagens, em que o fluxo de bits de uma mensagem
precisa ser armazenado em um banco de dados. A função retorna o fluxo de bits da parte física da mensagem de entrada,
identificada pelo parâmetro.
Em alguns casos, ela não retorna o fluxo de dados que representa o
campo real identificado. Por exemplo, as duas chamadas a seguir
retornam o mesmo valor:
BITSTREAM(Root.MQMD);
BITSTREAM(Root.MQMD.UserIdentifier);
porque elas estão contidas na mesma
parte da mensagem.