Utilize o nó MQGet para receber mensagens de clientes que se conectam ao broker utilizando o WebSphere MQ Enterprise Transport e as interfaces de programação de aplicativos MQI e AMI.
Também é possível usar o nó MQGet para recuperar mensagens que foram colocadas anteriormente em uma fila de mensagens do WebSphere MQ que está definida para o gerenciador de filas do broker.
Este tópico contém as seguintes seções:
O nó MQGet lê uma mensagem a partir de uma fila especificada e estabelece o ambiente de processamento para a mensagem. Se apropriado, você pode definir a fila de entrada como uma fila em cluster ou fila compartilhada do WebSphere MQ.
É possível usar um nó MQGet em qualquer lugar em um fluxo de mensagens, diferentemente de um nó MQInput, que é possível usar como o primeiro nó em um fluxo de mensagens. A árvore de mensagens de saída de um nó MQGet é construído pela combinação da árvore de entrada com a árvore de resultados a partir da chamada de MQGET. Você pode definir as propriedades do nó MQGet para controlar o modo no qual as mensagens são recebidas; por exemplo, você pode indicar que uma mensagem seja processada no controle de transação ou você pode pedir que, quando a árvore de resultado estiver sendo criada, a conversão de dados seja executada no recebimento de cada mensagem de entrada.
O nó MQGet está contido no repositório da paleta do WebSphere MQ e é representado no WebSphere Message Broker Toolkit pelo seguinte ícone:
Para obter informações sobre como usar o nó MQGet em um fluxo de mensagens, consulte Um Cenário de Resposta de Pedido que Usa um Nó MQGet.
Você só pode visualizar informações sobre amostras quando usa o centro de informações que está integrado ao WebSphere Message Broker Toolkit ou o centro de informações on-line. Você só poderá executar amostras quando usar o centro de informações que está integrado ao WebSphere Message Broker Toolkit.
Quando tiver colocado uma instância do nó MQGet em um fluxo de mensagens, será possível configurá-lo; para obter informações adicionais, consulte Configurando um Nó do Fluxo de Mensagens. As propriedades do nó são exibidas na visualização Propriedades.
Todas as propriedades obrigatórias para as quais é necessário inserir um valor (as propriedades que não têm um valor-padrão definido) são marcadas com um asterisco.
Se você configurar a propriedade Apenas Procurar, o valor configurado para a propriedade Modo de Transação será ignorado porque uma mensagem não pode ser procurada no ponto de sincronização. Entretanto, quaisquer mensagens derivadas que são propagadas posteriormente por um nó de saída na mesma instância do fluxo de mensagens seguem o comportamento que é descrito anteriormente, de acordo com o valor de Modo de Transação especificado.
Quando você incluir e configurar um nó MQGet em um fluxo de mensagens, poderá desejar substituir suas propriedades sob algumas condições. Por exemplo, você pode desejar ler a partir de uma fila que é identificada em outra parte da mensagem ou que é recuperada a partir de um registro do banco de dados.
Para substituir os valores configurados para as propriedades do nó MQGet para obter uma maneira mais dinâmica de processar mensagens, inclua um nó Compute ou JavaCompute em seu fluxo de mensagens antes do nó MQGet. Configure este nó para criar uma mensagem de saída e inclua campos na árvore de ambiente local para definir novos valores para as propriedades que deseja alterar.
SET LocalEnvironment.MQ.GET.QueueName = 'new_queue';
Use LocalEnvironment.MQ.GET. como o nome de correlação para todos os campos relacionados ao nó MQGet.
Configuração | Descrição |
---|---|
QueueName | Essa configuração substitui a propriedade
Nome da Fila do nó
MQGet; por exemplo:
|
InitialBufferSize | Essa configuração substitui a propriedade
Tamanho mínimo do buffer de mensagem do nó
MQGet; por exemplo:
|
MQGMO.* | Essa configuração substitui as opções de mensagem MQGET usadas pelo
nó MQGet; por exemplo:
Essa
substituição é fornecida para fins de flexibilidade, mas deve ser usada com cuidado
porque o MQGMO é usado exatamente conforme especificado.
As propriedades do nó e outras
substituições do ambiente local não são consideradas. Para obter mais informações sobre a estrutura MQGMO, consulte o Centro de Informações Online do WebSphere MQ Versão 7. |
Conecte os terminais de Saída (Out), Aviso (Warning), Falha (Failure) e Nenhuma Mensagem (No Message) desse nó a outro nó no fluxo de mensagens para processar a mensagem depois, processar erros ou enviar a mensagem a um destino adicional.
Para obter mais informações, consulte Conectando Terminais com Falha.
Terminal | Descrição |
---|---|
Entrada | O terminal de entrada que aceita a mensagem que está sendo processada pelo fluxo de mensagens. |
Aviso | O terminal de saída para o qual a árvore de saída é propagada se ocorrer um erro (com um CC que indique um aviso) no nó enquanto tenta obter uma mensagem a partir da fila. A parte MQMD da mensagem é analisada, mas o restante da mensagem será um elemento BLOB não analisado. O aviso é descartado se o terminal não for conectado e não houver nenhuma propagação da saída a partir do nó. |
Defeito | O terminal de saída para o qual a mensagem de entrada é roteada se ocorrer um erro (com um CC que indique um erro que seja mais severo que um aviso) no nó enquanto tenta obter uma mensagem a partir da fila. |
Saída | O terminal de saída para o qual a mensagem será roteada se for recuperada com êxito da fila do WebSphere MQ. |
Nenhuma Mensagem | O terminal de saída para o qual a mensagem de entrada será roteada se nenhuma mensagem estiver disponível na fila. A mensagem de saída que é propagada para o terminal Sem Mensagem é construída só a partir da mensagem de entrada, de acordo com os valores das propriedadesModo Gerar, Copiar Mensagem e Copiar Ambiente Local. |
As tabelas a seguir descrevem as propriedades do nó. A coluna com cabeçalho M indica se a propriedade é obrigatória (marcada com um asterisco se você precisar inserir um valor); a coluna com cabeçalho C indica se a propriedade é configurável (você pode alterar o valor quando incluir o fluxo de mensagens no arquivo BAR para implementá-lo).
Propriedade | M | A | Padrão | Descrição |
---|---|---|---|---|
Nome de nó | Não | Não | O tipo de nó, MQGet | O nome do nó. |
Short description | Não | Não | Em Branco | Uma breve descrição do nó. |
Descrição Longa | Não | Não | Em Branco | Texto que descreve a finalidade do nó no fluxo de mensagens. |
Propriedade | M | A | Padrão | Descrição | Propriedade do Comando mqsiapplybaroverride |
---|---|---|---|---|---|
Nome da Fila | Sim | Sim | Nenhum(a) | O nome da fila de mensagens do WebSphere MQ
a partir da qual este nó recupera mensagens. É necessário predefinir esta fila para o gerenciador de filas que hospeda o broker no qual o fluxo de mensagens é implementado. Se essa fila não for válida, o nó gerará uma exceção e a mensagem de entrada será propagada para o terminal de Falha (Failure). |
queueName |
As propriedades Análise de Mensagem de Entrada do nó MQGet são descritas na tabela a seguir.
<mcd><Msd>MRM</Msd><Set>DHM4UO906S001</Set><Type>receiptmsg1</Type>
<Fmt>XML</Fmt></mcd>
Se configurar valores, e
eles diferirem daqueles valores no cabeçalho MQRFH2, os valores no
cabeçalho MQRFH2 terão precedência.Propriedade | M | A | O padrão | Descrição |
---|---|---|---|---|
Domínio de mensagem | Não | Não | BLOB | O domínio usado para analisar a mensagem. Se o campo estiver em branco, o padrão será BLOB. |
Modelo de mensagem | Não | Não | Desmarcada | O nome do local do arquivo de esquema do modelo de mensagem no qual a mensagem é definida. Essa lista é preenchida com todos os arquivos de esquema de modelo de mensagem disponível para o domínio de mensagem selecionado. |
Message | Não | Não | Desmarcada | O nome ou local da raiz de mensagem em seu arquivo de esquema de modelo de mensagem. Essa lista é preenchida com todas as mensagens disponíveis definidas no modelo de mensagem que você selecionou. |
Formato físico | Não | Não | Desmarcada | O nome do formato físico da mensagem. Se estiver utilizando o analisador MRM ou IDOC, selecione da lista o formato físico da mensagem que chega. Essa lista inclui todos os formatos físicos que você definiu para o modelo de mensagem selecionado. Se você configurar a propriedade Domínio de Mensagem como DataObject, poderá configurar esta propriedade como XML ou SAP ALE IDoc. Configure esta propriedade como SAP ALE IDoc quando precisar analisar um fluxo de bits a partir de uma origem externa e gere uma árvore de mensagens. |
Propriedade | M | A | Padrão | Descrição |
---|---|---|---|---|
Cronometragem de análise (Parse timing) | Não | Não | On Demand | Essa propriedade controla quando a mensagem de fila é analisada. Os valores válidos são On Demand, Imediato e Completo. Por padrão, esta propriedade é configurada como On Demand, o que faz com que a análise da mensagem seja atrasada. Para que a mensagem seja analisa imediatamente, consulte Analisando On Demand. |
Utilizar analisador compacto MQRFH2C para cabeçalho MQRFH2 | Não | Não | Limpo | Esta propriedade controla se o analisador compacto MQRFH2C, em vez do analisador MQRFH2, será utilizado para cabeçalhos MQRFH2. Selecione Utilizar o analisador compacto MQRFH2C para o cabeçalho MQRFH2 se você desejar que o analisador MQRFH2C seja utilizado. Por padrão, essa caixa de opções fica desmarcada, o que significa que o analisador compacto não é utilizado. |
Construir árvore utilizando tipos de dados de esquema XML | Não | Não | Limpo | Esta propriedade controla se o analisador XMLNSC cria elementos da sintaxe na árvore de mensagens com tipos de dados obtidos do esquema XML. Você pode selecionar esta propriedades apenas se configurar a propriedade Validar na guia Validação ou Conteúdo ou Conteúdo e Valor. Para obter informações adicionais sobre XMLNSC, consulte Manipulando Mensagens no Domínio XMLNSC. |
Utilizar analisador compacto XMLNSC para domínio XMLNS | Não | Não | Limpo | Essa propriedade controla se o Analisador Compacto XMLNSC (XMLNSC Compact Parser) é utilizado para mensagens no Domínio XMLNS (XMLNS Domain). Se você definir essa propriedade, os dados da mensagem serão exibidos em XMLNSC nos nós que estão conectados ao terminal de saída quando o Domínio de Mensagens das propriedades do cabeçalho MQRFH2 ou da Análise da Mensagem for XMLNS. |
Reter conteúdo misto | Não | Não | Não selecionada | Essa propriedade controla se o analisador XMLNSC cria elementos na árvore de mensagem quando ele encontra texto misto na mensagem mensagem de fila. Se você selecionar a caixa de opções, serão criados elementos para texto misto. Se você desmarcar a caixa de opções, texto misto será ignorado e nenhum elemento será criado. |
Reter comentários | Não | Não | Limpo | Essa propriedade controla se o analisador XMLNSC cria elementos na árvore de mensagens quando ele encontra comentários na mensagem mensagem de fila. Se você selecionar a caixa de opções, serão criados elementos para comentários. Se você desmarcar a caixa de opções, comentários serão ignorados e nenhum elemento será criado. |
Reter instruções de processamento | Não | Não | Limpo | Essa propriedade controla se o analisador XMLNSC criar elementos na árvore de mensagens quando ele encontra instruções de processamento na mensagem de fila. Se você selecionar a caixa de opções, serão criados elementos para instruções de processamento. Se você desmarcar a caixa de opções, instruções de processamento serão ignoradas e nenhum elemento será criado. |
Elementos opacos | Não | Não | Em Branco | Essa propriedade é utilizada para especificar uma lista de elementos na mensagem de fila que devem ser analisados em segundo plano pelo analisador XMLNSC. A análise de ignorados será desempenhada apenas se a validação não estiver ativada (ou seja, se Validar for Nenhum); as entradas especificadas em Elementos Ignorados serão ignoradas se a validação estiver ativada. |
Propriedade | M | A | Padrão | Descrição |
---|---|---|---|---|
Modo de Transação | Não | Não | Sim | Esta propriedade controla se a mensagem que chega
é recebida no ponto de sincronização. Selecione um valor para Modo de Transação na lista
para definir as características transacionais de como essa mensagem é tratada:
|
Gerar modo | Não | Não | Mensagem | Essa propriedade controla quais partes da mensagem da árvore de
entrada são copiadas. Selecione um valor para Gerar modo a partir da lista para definir
quais componentes da mensagem de saída são gerados no nó MQGet e quais componentes são tomados do mensagem de entrada.
|
Copiar mensagem | Não | Não | Nenhum(a) | Essa propriedade controla quais partes da mensagem da árvore de
entrada são copiadas. Se você tiver configurado Gerar modo para Message ou Message e LocalEnvironment,
selecione um valor para Copiar mensagem a partir da lista
para definir que partes da mensagem são geradas no nó MQGet e que partes são tomadas do mensagem de entrada.
|
Copiar ambiente local | Não | Não | Copiar Todo o Ambiente Local | Essa propriedade controla como o ambiente local
é copiado para a mensagem de saída. Se você tiver configurado Gerar modo para LocalEnvironment ou Message e LocalEnvironment,
selecione um valor para Copiar Ambiente Local a partir da lista para definir que partes do
ambiente local são geradas no nó MQGet e que parte são tomadas da mensagem de entrada.
|
Intervalo de espera (Wait interval (ms)) | Sim | Não | 1000 | O tempo máximo, em milissegundos, para aguardar a obtenção da mensagem de fila da fila de mensagens. Forneça um valor para a propriedade Aguardar Intervalo (ms) para especificar quantos milissegundos aguardar para que uma mensagem seja recebida da chamada MQGET. Se você selecionar 0, o intervalo de espera será desativado e não haverá um tempo de espera para mensagens. O valor de Intervalo de Espera (ms) não pode ser negativo. Se você não fornecer um valor, o valor padrão de 1000 milissegundos será utilizado. |
Tamanho mínimo do buffer de mensagens (KB) | Sim | Não | 4 | O tamanho mínimo, em KB, do buffer de obtenção.
O valor mínimo dessa propriedade é 1. Forneça um valor para esta propriedade para especificar o tamanho do buffer inicial para a chamada MQGET. O buffer se expande automaticamente para aceitar uma mensagem de qualquer tamanho mas, caso as mensagens sejam grandes, especifique um valor adequado para reduzir a frequência do buffer que está sendo redimensionado. Se você não fornecer um valor, o tamanho do buffer será de 4 KB. |
Propriedade | M | A | Padrão | Descrição |
---|---|---|---|---|
Local de MQMD de entrada | Não | Não | InputRoot.MQMD | O local na montagem da mensagem de entrada em que o MQMD que deve ser utilizado para MQGET pode ser encontrado. O local padrão é InputRoot.MQMD. |
Local de parâmetros MQ de entrada | Não | Não | InputLocalEnvironment.MQ.GET | O local na montagem da mensagem de entrada em que os parâmetros WebSphere MQ (por exemplo, o tamanho de buffer inicial e o MQGMO são substituídos) podem ser localizados. O local padrão é InputLocalEnvironment.MQ.GET. |
Obter por ID de correlação | Não | Não | Limpo | Se você selecionar essa caixa de opções, apenas as mensagens que
tiverem o ID de correlação especificado serão recuperadas. Se você selecionar Obter por ID de Correlação, o campo CorrelId da mensagem a ser recuperada deve corresponder ao campo CorrelId no Local MQMD de Entrada. Por padrão, essa caixa de opções é limpa. Configurar o campo CorrelId como MQCI_NONE tem o mesmo efeito que não selecionar Obter por ID de correlação. |
Obter por ID de mensagem | Não | Não | Limpo | Se você selecionar essa caixa de opções, apenas as mensagens que
tiverem o ID de mensagem especificado serão recuperadas. Se você selecionar Obter por ID de Mensagem, o campo MsgId da mensagem a ser recuperado deve corresponder ao campo MsgId no Local MQMD de Entrada. Por padrão, essa caixa de opções é limpa. |
Utilizar todos os campos MQMD de entrada | Não | Não | Limpo | Se você selecionar Utilizar todos os
campos de MQMD, todos os campos de MQMD no Local de
MQMD de Entrada são utilizados para recuperar a mensagem. Se um fluxo de bits de MQMD
estiver presente no Local de MQMD de Entrada,
todos os campos no fluxo de bits são utilizados. Certifique-se de que o MQMD da mensagem a ser
recuperada corresponda a esses campos. Por padrão, essa caixa de opções é limpa. Se você não fornecer um MQMD de entrada, o MQMD padrão será utilizado. Se você fornecer um MQMD de entrada, o MQMD padrão será utilizado depois das seguintes modificações:
|
Somente procura | Não | Não | Não selecionada | Esta propriedade controla se uma mensagem será removida da fila quando for lida. Se esta caixa de opção estiver selecionada, a mensagem não será removida da fila quando for lida. Selecione Navegar Somente para especificar que a mensagem deve ser retida na fila quando ela for lida. |
Reconfigurar cursor da procura | Não | Não | Limpo | É possível configurar esta propriedade apenas se você tiver selecionado Apenas Procura. Quando selecionar Reconfigurar cursor da procura, o nó procurará
a partir do início da fila MQ (ou seja, a opção de obtenção MQGMO_BROWSE_FIRST MQ
é especificada). Se não selecionar esta propriedade, o nó procurará a partir da posição do cursor atual na fila MQ (ou seja, a opção de obtenção MQGMO_BROWSE_NEXT MQ é especificada). |
Propriedade | M | C | Padrão | Descrição |
---|---|---|---|---|
Local de dados de saída | Não | Não | OutputRoot | Essa propriedade especifica onde os dados de saída são colocados. Se você deixar o campo em branco, OutputRoot será utilizado como padrão.
Insira o local de início na árvore de mensagens de saída na qual os elementos analisados da cadeia de bits do
mensagem de fila estão armazenados. Todos os elementos neste local são excluídos
e o comportamento padrão é substituir a mensagem da árvore de entrada
pela mensagem de fila. É possível inserir qualquer referência de campo ESQL válida (esta referência pode incluir expressões), incluindo novas referências de campo para criar um nó na árvore de mensagens para inserir a resposta na mensagem que é propagada a partir da árvore de entrada. Por exemplo, OutputRoot.XMLNS.ABC.DEF e Environment.GotReply são referências de campo válidas. Para obter informações mais detalhadas, consulte Um Cenário de Resposta de Pedido que Usa um Nó MQGet. Quando a cadeia de bits da mensagem de fila for analisada para criar o conteúdo da árvore de mensagens, as propriedades da mensagem especificadas como as propriedades de Análise de Mensagem de Entrada do nó serão utilizadas. |
Local de dados de resultado | Não | Não | ResultRoot | Esta propriedade especifica qual subárvore (da mensagem de fila)
utilizar. Se você deixar essa campo em branco, ResultRoot será utilizado como padrão, e a
mensagem de fila inteira será utilizada. Se, por exemplo, ResultRoot.MQMD.ReplyToQ for especificado,
apenas essa subárvore será utilizada. Configure esta propriedade para controlar qual subárvore do mensagem de fila será colocada na mensagem de saída. Se, por exemplo, você quiser apenas o MQMD a partir de mensagem de fila, utilize ResultRoot.MQMD; essa subárvore é então colocada no local especificado por Local dos Dados de Saída. |
Local de parâmetros MQ de saída | Não | Não | OutputLocalEnvironment.MQ.GET | Essa propriedade especifica onde os parâmetros de saída do WebSphere MQ estão localizados. Se você deixar esse campo em branco, OutputLocalEnvironment.MQ.GET será
utilizado como padrão. Defina o Modo Gerar para
incluir LocalEnvironment para garantir que os valores
atualizados estejam visíveis nos nós de recebimento de dados. O
local padrão é OutputLocalEnvironment.MQ.GET. Configure esta propriedade para controlar onde o CC (código de conclusão), o RC (código de razão), o indicador Procurado e qualquer outro parâmetro do WebSphere MQ (por exemplo, o MQMD usado pela chamada MQGET) serão colocados na árvore de saída. |
Local de dados de aviso | Não | Não | OutputRoot | Essa propriedade especifica onde os dados de saída são colocados se MQGET retorna um código de aviso. Se você deixar esse campo em branco,
OutputRoot será utilizado como padrão. Configure esta propriedade para controlar onde o mensagem de fila será colocado quando a chamada MQGET retornar um código de aviso. Você pode digitar qualquer referência de campo ESQL válida (consulte a descrição da propriedade Local dos Dados de Saída ). Os dados colocados neste local são sempre a árvore de resultados completa, com o corpo como um elemento BLOB. A opção Local dos Dados de Resultado não é utilizada para dados de aviso. |
Incluir conteúdo da mensagem na montagem de mensagem de saída | Não | Não | Selecionado | Esta propriedade especifica que não são necessários dados de resultado ou de aviso
para a montagem da mensagem de saída. Se você selecionar esta caixa de opção, o nó
obterá ou procurará a mensagem na fila sem ler ou analisar totalmente
seu conteúdo. Se você selecionar Incluir conteúdo da mensagem na montagem da mensagem de saída, não será garantido que o conteúdo da mensagem seja incluído na árvore de saída, porque esta inclusão depende de outras propriedades do nó, como a propriedade Modo Gerar. Limpe Incluir conteúdo da mensagem na montagem da mensagem de saída para especificar que nenhum resultado ou dado de aviso é necessário para a montagem da mensagem de saída. Esta ação obtém ou procura a mensagem na fila sem ler ou analisar seu conteúdo. |
Propriedade | M | A | Padrão | Descrição | Propriedade do Comando mqsiapplybaroverride |
---|---|---|---|---|---|
Validate | Não | Sim | Nenhum(a) | Essa propriedade controla se a validação ocorre. Os valores válidos são Nenhum, Conteúdo, Conteúdo e Valor e Herdar. | validateMaster |
Ação de falha | Não | Não | Exceção | Essa propriedade controla o que acontecerá se a validação falhar. Você pode configurar essa propriedade somente se configurar Validar como Conteúdo ou Conteúdo e Valor. Os valores válidos são Rastreio do Usuário, Registro de Erros Local, Exceção e Lista de Exceções. |
Propriedade | M | P | Default | Descrição |
---|---|---|---|---|
Eventos | Não | Não | Nenhum | Eventos definidos para o nó são exibidos nesta guia. Por padrão, nenhum evento de monitoramento é definido em um nó do fluxo de mensagens. Utilize Incluir, Editar,
e Excluir para criar, alterar ou excluir eventos de monitoração no nó; consulte Configurando fontes de eventos de monitoramento utilizando propriedades de monitoramento para detalhes. É possível ativar e desativar eventos mostrados aqui selecionando ou desmarcando a caixa de opções Ativado. |