Nó Mapping

Este tópico contém as seguintes seções:

Finalidade

Utilize o nó Mapping para construir uma ou mais mensagens e ocupá-las com novas informações, com informações modificadas da mensagem de entrada ou com informações extraídas de um banco de dados. Você pode modificar elementos dos dados do corpo da mensagem, seu ambiente associado e sua lista de exceção.

Os cabeçalhos na mensagem de entrada são sempre copiados para a mensagem de saída sem modificação. Você não pode modificar os cabeçalhos de mensagens em um nó Mapping; deve utilizar um nó Compute.

Esses componentes da mensagem de saída podem ser definidos utilizando mapeamentos que são baseados em elementos da mensagem de entrada e de dados de um banco de dados externo. Você cria os mapeamentos associados a esse nó no arquivo de mapeamento associado a esse nó, mapeando entradas (mensagem ou banco de dados) para saídas. Opcionalmente, você pode modificar as designações feitas por esses mapeamentos, utilizando funções e procedimentos fornecidos ou definidos pelo usuário: por exemplo, você pode converter um valor de cadeia em maiúscula quando designá-lo ao campo de saída da mensagem.

Utilize o nó Mapping para:

  • Construir uma nova mensagem
  • Copiar mensagens entre analisadores
  • Transformar uma mensagem de um formato para outro

O nó Mapping é representado no pelo seguinte ícone:

 Ícone do Nó Mapping

Utilizando este nó em um fluxo de mensagens

Veja as amostras a seguir para consultar sobre como utilizar este nó:

Configurando o Nó Mapping

Quando você tiver colocado uma instância do nó Mapping em um fluxo de mensagens, poderá configurá-lo. Clique com o botão direito na visualização do editor clique em Propriedades. As propriedades básicas do nó são exibidas.

Todas as propriedades mandatórias, para as quais é necessário inserir um valor (aquelas que não possuem um valor padrão definido) são marcadas com um asterisco no diálogo das propriedades.

Configure o nó Mapping da seguinte forma:

  1. Especifique em Origem de Dados o nome através do qual o banco de dados apropriado será é conhecido no sistema no qual o fluxo de mensagens será executado. O intermediário conecta-se às informações de ID de usuário e senha especificadas no comando, ou.

    No sistema z/OS, o intermediário utiliza o ID da tarefa iniciada do intermediário.

  2. Selecione a definição Transação no menu drop down. Os valores são:
    • Automático (o padrão). O fluxo de mensagens, do qual o nó Mapping faz parte, será consolidado se for bem-sucedido. Ou seja, as ações definidas nos mapeamentos são executadas e a mensagem continua no fluxo de mensagens. Se o fluxo de mensagens falhar, ele será revertido. Se você escolher Automático, a capacidade de consolidar ou reverter a ação do nó Mapping no banco de dados dependerá do sucesso ou da falha do fluxo de mensagens inteiro.
    • Consolidar.Se desejar consolidar quaisquer ações não consolidadas executadas nesse fluxo de mensagens no banco de dados conectado a este nó, independentemente do êxito ou defeito do fluxo de mensagens como um todo, selecione Consolidar.As alterações feitas no banco de dados são consolidadas mesmo se o fluxo de mensagens falhar.
  3. No Módulo de Mapeamento, identifique a rotina de mapeamento a ser executada nesse nó. Por padrão, o nome designado à rotina de mapeamentos é idêntica ao nome do arquivo de mapeamentos no qual essa rotina é definida. O nome padrão para o arquivo é o nome do fluxo de mensagens concatenado com o nome do nó quando você incluí-lo no fluxo de mensagens (por exemplo, MFlow1_Mapping.mfmap para o primeiro nó Mapping no fluxo de mensagens MFlow1). Você não pode especificar um valor que inclui espaços.

    Se você clicar em Procurar próximo ao campo de entrada, um diálogo é exibido, listando todas as rotinas de mapeamento disponíveis, acessíveis por esse nó. Selecione a rotina desejada e clique em OK. O nome da rotina é definida em Módulo de Mapeamento.

    Para trabalhar com a rotina de mapeamentos associada a esse nó, clique com o botão direito no nó e selecione Abrir Mappings. Se a rotina de mapeamento não existir, ela será criada com o nome padrão no arquivo padrão. Se o arquivo já existir, você também poderá abrir o arquivo <flow_name>_<node_name>.mfmap na visualização do Navigator.

    Uma rotina de mapeamento é específica para o tipo de nó com o qual está associada; não é possível utilizar uma rotina de mapeamento desenvolvida para um nó Mapping com qualquer outro nó que use mapeamentos (por exemplo, um nó DataInsert). Se você criar uma rotina de mapeamento, não será possível chamá-la a partir de outra rotina de mapeamento, embora seja possível chamá-la a partir de uma rotina ESQL.

    Não é possível modificar os cabeçalhos da mensagem no nó Mapping; eles são copiados inalterados da mensagem de entrada para a mensagem de saída. Você deve utilizar um nó Compute para alterar os cabeçalhos em uma mensagem.

    Para obter informações adicionais sobre o trabalho com os arquivos de mapeamento, e a definição de seu conteúdo, consulte Desenvolvendo Mapeamentos.

  4. Em Modo de Mapeamento, especifique o modo que deseja utilizar para processar informações que estão sendo passadas pelo nó Mapping. Você pode escolher qualquer combinação dos componentes Message, LocalEnvironment e Exception a ser gerada e modificada pelo nó Mapping.

    Você deve definir essa propriedade para refletir corretamente o formato da mensagem de saída requerido. Se selecionar uma opção (ou aceitar o valor padrão) que não inclua um determinado componente da mensagem, esse componente não será incluído em qualquer mensagem de saída que for construída.

    (Em releases anteriores à Versão 2.1, o ambiente associado (Ambiente Local) era conhecido como Lista de Destino. O ambiente Lista de Destino é válido e pode ser utilizado para compatibilidade).

    (O componente Environment da árvore de mensagens não é afetado pela definição do modo. Seu conteúdo, se houver, é transmitido a partir desse nó.)

    As opções são explicadas na tabela a seguir.

    Modo Descrição
    Mensagem (o padrão) A mensagem é gerada ou passada pelo nó Mapping conforme é modificada no nó.
    Ambiente Local A estrutura em árvore Ambiente Local é gerada ou passada pelo nó Mapping conforme é modificada no nó.
    Ambiente Local e Mensagem A estrutura em árvore Ambiente Local e a mensagem são geradas ou passadas pelo nó Mapping conforme são modificadas pelo nó.
    Exceção A Lista de Exceções é gerada ou passada pelo nó Mapping conforme é modificada pelo nó.
    Exceção e Mensagem A Lista de Exceções e a mensagem são geradas ou passadas pelo nó Mapping conforme são modificadas pelo nó.
    Exceção e Ambiente Local A Lista de Exceções e estrutura em árvore Ambiente Local são geradas ou passadas pelo nó Mapping conforme são modificadas pelo nó.
    Todos A mensagem, Lista de Exceções e Ambiente Local são geradas ou passadas pelo nó Mappings conforme são especificadas pelo nó.
  5. Selecione Básico no navegador do diálogo de propriedades e defina ou limpe as caixas de opções:
    • Se desejar que mensagens de aviso do banco de dados sejam tratadas como erros e desejar que o nó propague a mensagem de saída para o terminal com falha, selecione a caixa de opções Tratar Avisos como Erros. A caixa é inicialmente limpa.

      Quando selecionar a caixa, o nó tratará todos os códigos de retorno positivos no banco de dados como erros e gerará exceções da mesma forma que faria para os erros negativos ou mais sérios.

      Se você não selecionar a caixa, o nó tratará avisos como códigos de retorno normais e não gerará nenhuma exceção. O aviso mais significativo gerado é não-localizado, que pode ser tratado como um código de retorno normal de forma segura na maioria das circunstâncias.

    • Se você desejar que o intermediário gere uma exceção quando for detectado um erro do banco de dados, selecione a caixa de opções Emitir Exceção em Erro do Banco de Dados. A caixa é inicialmente selecionada.

      Se você limpar a caixa, deverá tratar o erro no fluxo de mensagens para assegurar a integridade do intermediário e do banco de dados: o erro será ignorado se você não tratá-lo pelo seu próprio processamento, porque escolheu não chamar o tratamento de erros padrão pelo intermediário. Por exemplo, você pode conectar o terminal failure a uma sub-rotina de processamento de erros.

  6. Selecione Validação no navegador do diálogo de propriedades se desejar que o analisador MRM valide o corpo de mensagens no dicionário gerado a partir do conjunto de mensagens. As opções de validação que você define em um nó Mapping se aplicam apenas a algumas mensagens de saída que são criadas. A validação não ocorre no próprio nó, mas apenas quando a mensagem é subseqüentemente convertida em um fluxo de bits.
    • A propriedade Validar é inicialmente definida como Nenhum. Altere-a para Conteúdo e Valor para solicitar validação de conteúdo (verificações de conteúdo e composição de tipo) e validação de valor (verificações de tipos de dados de valores, verificações de nulos permitidos, verificações de comprimento, verificações de intervalos, verificações de enumeração, etc.).O nó Mapping inclui as opções especificadas na árvore de mensagens de saída para quando ela for subseqüentemente validada.
    • Para especificar o que acontece quando ocorre um defeito de validação, selecione uma das seguintes opções para Ação de Falha:
      • Rastreio do Usuário: grave todas as falhas de validação para o rastreio de usuários e continue o processamento.
      • Log de Erros Local: grave todas as falhas de validação no log de eventos e continue o processamento.
      • Exceção: emita uma exceção na primeira falha de validação. Esse não é o comportamento padrão.

      As duas primeiras opções são úteis, principalmente quando a validação é chamada pela primeira vez, porque você vê todos os defeitos de validação, não apenas o primeiro erro encontrado. Quando tiver analisado os defeitos, geralmente você poderá selecionar Exceção para utilização futura.

      Os destinos de defeitos se comportam como os da saída do nó Trace. Assim, por exemplo, se você selecionar Rastreio do Usuário, as entradas de rastreio serão gravadas independentemente da definição do sinalizador de rastreio do usuário para o fluxo de mensagens.

    • Incluir Todas Restrições de Valor é selecionado por padrão e não pode ser alterado. Essa definição significa que são feitas verificações completas de tipos de dados e de valores (consulte Restrições de Valores Lógicos de Tipo Simples para obter informações adicionais sobre restrições).
    • Corrigir não poderá ser alterado a partir de sua definição padrão de Nenhum. Se Ação de Defeito não estiver definida como Exceção, a ação corretiva limitada será executada quando ocorrerem defeitos de validação. Se Ação de Defeito estiver definido como Exceção, nenhuma ação corretiva será executada e será emitida uma exceção no primeiro defeito de validação.
  7. Selecione Descrição no navegador de diálogo de propriedades para inserir uma descrição breve, uma descrição longa, ou ambas.
  8. Clique em Aplicar para fazer as alterações no nó Mapping sem fechar o diálogo de propriedades. Clique em OK para aplicar as alterações e fechar o diálogo de propriedades.

    Clique em Cancelar para fechar o diálogo e descartar todas as alterações feitas nas propriedades.

Terminais e Propriedades

Os terminais do nó Mapping são descritos na tabela a seguir.

Terminal Descrição
Entrada O terminal de entrada que aceita a mensagem para processamento pelo nó.
Defeito O terminal de saía para qual a mensagem de entrada será propagada caso seja detectada uma falha durante o cálculo. Se você tiver selecionado Tratar Avisos como Erros, o nó propagará a mensagem para esse terminal se as mensagens de aviso de banco de dados forem retornadas, mesmo se o processamento tiver sido concluído com êxito.
Saída O terminal de saída que exibe a mensagem após a execução da instrução do banco de dados.

As tabelas a seguir descrevem as propriedades do nó; a coluna com cabeçalho M indica se a propriedade é mandatória (marcado com um asterisco no diálogo de propriedades caso seja necessário digitar um valor quando nenhum padrão for definido), a coluna com cabeçalho C indica se a propriedades é configurável (você poderá alterar o valor quando incluir o fluxo de mensagens no arquivo bar para implementá-lo).

As propriedades Básicas do nó Mapping são descritas na tabela a seguir.

Propriedade M C Padrão Descrição
Fonte de Dados Não Sim   O nome da origem de dados ODBC do banco de dados no qual residem as tabelas as quais foram referidas nos mapeamentos associados a este nó (identificado pela propriedade Módulo de Mapeamento).
Transação Sim Não Automático O modo de transação para o nó. Os valores válidos são Automático ou Consolidar.
Módulo de Mapeamento Sim Não Mapeamento O nome da rotina de mapeamento que contém as instruções a serem executadas na árvore de mensagens ou no banco de dados. A rotina é exclusiva para esse tipo de nó.
Modo de Mapeamento Sim Não Message Selecione uma das seguintes opções:
  • Message
  • Ambiente Local
  • Ambiente Local e Mensagem
  • Exceção
  • Exceção e Mensagem
  • Exceção e Ambiente Local
  • Todos
Tratar Avisos como Erros Sim Não Limpo Trata aviso SQL do banco de dados como erros. Se você selecionar a caixa de opções, esta ação é executada.
Exceção emitida em erro do banco de dados Sim Não Selecionada Erros de banco de dados fazem com que o intermediário lance uma exceção. Se você selecionar a caixa de opções, esta ação é executada.

As propriedades de Validação do nó Mapping são descritas na tabela a seguir.

Propriedade M C Padrão Descrição
Validar Sim Não Nenhum Determina se a validação ocorrerá. Os valores válidos são Nenhum e Conteúdo e Valor.
Ação de Defeito Sim Não Exceção O que acontece se ocorrer um defeito de validação. Você pode definir essa propriedade apenas se Validar for definido para Conteúdo e Valor. Os valores válidos são Rastreio do Usuário, Log de Erro Local e Exceção.
Incluir Todas as Limitações do Valor Sim Não Selecionada Essa propriedade não pode ser editada. A ação padrão, indicada pela caixa de opções que está sendo selecionada, é que todas as restrições de valores estão incluídas na validação.
Corrigir Sim Não Nenhum Essa propriedade não pode ser editada. É fornecida uma correção mínima.

As propriedades de Descrição do nó Mapping são descritas na tabela a seguir.

Propriedade M C Padrão Descrição
Descrição Breve Não Não   Uma breve descrição do nó.
Descrição Longa Não Não   Texto que descreve a finalidade do nó no fluxo de mensagens.

Conceitos relacionados
Fluxos de Mensagem
Fluxos de Mensagens, Mapeamentos e ESQL
Editor de Mapeamento do Fluxo de Mensagens

Tarefas relacionadas
Configurando o DB2
Decidindo Quais Nós Utilizar
Configurando Fluxos de Mensagens Coordenados
Tratando Erros em Fluxos de Mensagens
Desenvolvendo Mapeamentos
Editando Propriedades Configuráveis

Referências relacionadas
Comando mqsichangebroker
Comando mqsicreatebroker
Comando mqsisetdbparms
Nó Compute
Nó Datalnsert