Nodo Mapping

Este tema contiene las siguientes secciones:

Finalidad

Utilice el nodo Mapping para construir uno o más mensajes nuevos y rellenarlos con información nueva, con información modificada del mensaje de entrada o con información extraída de la base de datos. Puede modificar elementos de los datos del cuerpo del mensaje, su entorno asociado y su lista de excepción.

Las cabeceras del mensaje de entrada siempre se copian en el mensaje de salida sin modificarse. No puede modificar las cabeceras de mensajes en un nodo Mapping; debe utilizar un nodo Compute.

Estos componentes del mensaje de salida pueden definirse mediante correlaciones basadas en elementos del mensaje de entrada y datos de la base de datos externa. Las correlaciones asociadas con esta nodo se crean en el archivo de correlaciones asociado con este nodo correlacionando entradas (mensaje o base de datos) con salidas. Si lo desea, modifique las asignaciones realizadas por estas correlaciones utilizando funciones y procedimientos proporcionados o definidos por el usuario; por ejemplo, puede convertir un valor de serie de caracteres a mayúsculas cuando se asigna al campo de salida del mensaje.

Utilice el nodo Mapping para:

  • Crear un nuevo mensaje
  • Copiar mensajes entre analizadores
  • Transformar un mensaje de un formato a otro

El nodo Mapping se representa en el área de trabajo por el icono siguiente:

Icono de nodo Mapping

Utilización de este nodo en un flujo de mensajes

Consulte los ejemplos siguientes para ver cómo puede utilizar este nodo:

Configuración del nodo Mapping

Después de transferir una instancia del nodo Mapping a un flujo de mensajes, puede configurarla. Pulse el botón derecho del ratón en el nodo en la vista de editor y pulse Propiedades. Se visualizan las propiedades básicas de nodo.

Todas las propiedades obligatorias para las que se debe entrar un valor (las que no tienen definido un valor por omisión) se marcan con un asterisco en el diálogo de propiedades.

Configure el nodo Mapping como se describe a continuación:

  1. Especifique en Origen de datos el nombre por el que se conoce la base de datos adecuada en el sistema en el que se va a ejecutar este flujo de mensajes. El intermediario se conecta a esta base de datos con la información de ID de usuario y contraseña que se ha especificado en el mandato mqsicreatebroker, mqsichangebroker o mqsisetdbparms.

    En sistemas z/OS, el intermediario utiliza el ID de tarea iniciada por el intermediario.

  2. Seleccione el valor Transacción en el menú desplegable. Los valores son:
    • Automático (el valor por omisión). El flujo de mensajes, del que forma parte el nodo Mapping, se confirma si es satisfactorio. Es decir, se llevan a cabo las acciones definidas en las correlaciones y el mensaje continúa a través del flujo de mensajes. Si el flujo de mensajes no se ejecuta correctamente, se restituye. Si selecciona Automático significa que la capacidad de confirmar y restituir la acción del nodo Mapping en la base de datos depende de si todo el flujo de mensajes ha sido correcto o ha generado un error.
    • Confirmar. Si desea confirmar todas las acciones no confirmadas ejecutadas en este flujo de mensajes en la base de datos conectada a este nodo, sin tener en cuenta si el flujo de mensajes en conjunto se ejecutó o no satisfactoriamente, seleccione Confirmar. Los cambios realizados en la base de datos se confirman incluso si el flujo de mensajes falla.
  3. En Módulo de correlación, identifique la rutina de correlación que se va a ejecutar en este nodo. Por omisión, el nombre asignado a la rutina de correlación es idéntico al nombre del archivo de correlaciones en el que se define. El nombre por omisión del archivo es el nombre del flujo de mensajes concatenado con el nombre del nodo cuando se incluye en el flujo de mensajes (por ejemplo, MFlow1_Mapping.mfmap para el primer nodo Mapping en el flujo de mensajes MFlow1). No puede especificar un valor que incluye espacios.

    Si pulsa Examinar junto a este campo de entrada, aparece un diálogo que muestra todas las rutinas de correlación disponibles a las que este nodo puede acceder. Seleccione la rutina que desea y pulse Aceptar. El nombre de rutina se establece enMódulo de correlación.

    Para trabajar con la rutina de correlación asociada con este nodo, pulse el botón derecho del ratón en el nodo y seleccione Abrir correlaciones. Si la rutina de correlación no existe, se crea automáticamente con el nombre por omisión en el archivo por omisión. Si el archivo ya existe, también puede abrir el archivo <nombre_flujo>_<nombre_nodo>.mfmap en la vista de Navegador.

    Una rutina de correlación es específica al tipo de nodo al que está asociada; no puede utilizar una rutina de correlación desarrollada para un nodo Mapping en ningún otro nodo que utilice correlaciones (por ejemplo, un nodo DataInsert). Si ha creado una rutina de correlación, no puede llamarla desde ninguna otra rutina, aunque sí puede llamarla desde una rutina de ESQL.

    Las cabeceras de mensajes del nodo Mapping no pueden modificarse; se copian sin modificar del mensaje de entrada en el mensaje de salida. Debe utilizar un nodo Compute si desea cambiar las cabeceras de un mensaje.

    Para obtener más información sobre cómo trabajar con los archivos de correlación y cómo definir su contenido, consulte Desarrollo de correlaciones.

  4. En Modalidad de correlación, especifique la modalidad que desea utilizar para procesar la información que se pasa a través del nodo Mapping. Puede elegir cualquier combinación de los componentes Mensaje, Entorno local y Excepción para que el nodo Mapping los genere y modifique.

    Debe establecer esta propiedad para reflejar correctamente el formato de mensaje de salida que necesita. Si selecciona una opción (o acepta el valor por omisión) que no incluye un determinado componente del mensaje, dicho componente no se incluye en ningún mensaje de salida que se cree.

    (En releases anteriores a la versión 2.1, el entorno asociado (entorno local) se denominaba lista de destinos. Lista de destinos es válida y puede utilizarse a efectos de compatibilidad.)

    (Este valor de modalidad no afectará al componente Entorno del árbol de mensajes. Su contenido, si lo tiene, se pasa desde este nodo.)

    Las opciones se describen en la tabla siguiente.

    Modalidad Descripción
    Mensaje (el valor por omisión) El mensaje se genera o pasa a través del nodo Mapping modificado dentro del nodo.
    Entorno local La estructura en árbol de entorno local se genera o se pasa a través del nodo Mapping a medida que se modifica dentro del nodo.
    Entorno local y mensaje El mensaje y la estructura en árbol de entorno local se generan o pasan a través del nodo Mapping a medida que el nodo los modifica.
    Excepción La lista de excepciones se genera o pasa a través del nodo Mapping a media que el nodo la modifica.
    Excepción y mensaje La lista de excepciones y el mensaje se generan o pasan a través del nodo Mapping a medida que el nodo los modifica.
    Excepción y entorno local La lista de excepciones y la estructura en árbol de entorno local se generan o pasan a través del nodo Mapping a medida que el nodo los modifica.
    Todos El mensaje, la lista de excepciones y el entorno local se generan a través del nodo Mapping a medida que el nodo los modifica.
  5. Seleccione Básico en el navegador del diálogo de propiedades y establezca o desmarque los dos recuadros de selección:
    • Si desea que los mensajes de aviso de base de datos se procesen como errores y que el nodo propague el mensaje de salida hasta el terminal de anomalías, seleccione el recuadro Tratar los avisos como errores. Al principio el recuadro está sin seleccionar.

      Al seleccionar el recuadro, el nodo trata como errores todos los códigos de retorno positivos procedentes de la base de datos base y genera excepciones de la misma forma que lo hace para los errores negativos o más graves.

      Si no selecciona este recuadro, el nodo procesa los avisos como si fueran códigos de retornos normales y no genera ninguna excepción. El aviso más significativo generado es no encontrado, que puede manejarse como un código de retorno normal de forma segura en la mayoría de las circunstancias.

    • Si desea que el intermediario genere una excepción cuando se detecte un error en la base de datos, seleccione el recuadro Generar excepción cuando se produce un error en la base de datos. Al principio el recuadro está seleccionado.

      Si deselecciona el recuadro, deberá manejar el error en el flujo de mensajes para garantizar la integridad del intermediario y de la base de datos: el error se ignora si no lo maneja a través de su propio proceso, porque ha elegido no invocar el manejo de errores por omisión que realiza el intermediario. Por ejemplo, podría conectar el terminal de anomalías a una subrutina de proceso de errores.

  6. Seleccione Validación en el navegador del diálogo de propiedades si desea que el analizador MRM valide el cuerpo de los mensajes con el diccionario generado a partir del conjunto de mensajes. Las opciones de validación que se establecen en un nodo Mapping sólo se aplican a los mensajes de salida que se crean. La validación no se lleva a cabo dentro del nodo, sino sólo cuando el mensaje se convierte posteriormente en una corriente de bits.
    • La propiedad Validar al principio está establecida en Ninguno. Cámbiela por Contenido y valor para solicitar la validación del contenido (comprobaciones de contenido de tipo y de composición) y la validación de valor (comprobaciones de tipo de datos de valor, comprobaciones de permisos de nulos, comprobaciones de longitud, comprobaciones de rango, comprobaciones de enumeración y así sucesivamente). El nodo Mapping añade las opciones especificada en el árbol de mensajes de salida para cuando se valida posteriormente.
    • Para especificar lo que sucede cuando se produce una anomalía en una validación, seleccione una de las siguientes opciones para Acción para anomalía:
      • Rastreo de usuario: escribe todas las anomalías de la validación en un rastreo de usuario y continúa con el proceso.
      • Anotaciones de error locales: escriba todas las anomalías de la validación en la anotaciones de error y continúa el proceso.
      • Excepción: genera una excepción en la primera anomalía de validación. Es el comportamiento por omisión.

      Las dos primeras opciones son especialmente útiles la primera vez que se invoca la validación porque se visualizan todas las anomalías de validación, no únicamente el primer error que se detecta. Después de analizar las anomalías, puede seleccionar Excepción para un uso futuro.

      Los destinos de anomalías funcionan igual que los destinos para la salida del nodo Trace. Por ello, si selecciona Rastreo de usuario, las entradas de rastreo se escriben sin tener en cuenta el valor del distintivo del rastreo de usuario para el flujo de mensajes.

    • Incluir todas las limitaciones de valores se selecciona por omisión y no puede cambiarse. Este valor significa que se llevan a cabo comprobaciones de tipo de datos completos y comprobaciones de valor (consulte Limitaciones de valores lógicos de tipo simple para obtener más información sobre restricciones).
    • El valor por omisión de Arreglo, que es Ninguno, no puede cambiarse. Si Acción para anomalía no se establece en Excepción, se lleva a cabo una acción correctora limitada cuando se producen las anomalías en la validación. Si Acción para anomalía se establece en Excepción, no se lleva a cabo ninguna acción correctora y se genera una excepción cuando se produce el primer error en la validación.
  7. Seleccione Descripción en el navegador del diálogo de propiedades para entrar una descripción breve, una descripción larga o ambas.
  8. Pulse Aplicar para realizar los cambios en el nodo Mapping sin cerrar el diálogo de propiedades. Pulse Aceptar para aplicar los cambios y cerrar el diálogo de propiedades.

    Pulse Cancelar para cerrar el diálogo y descartar todos los cambios realizados en las propiedades.

Terminales y propiedades

Los terminales de nodo Mapping se describen en la tabla siguiente.

Terminal Descripción
Terminal de entrada Terminal de entrada que acepta un mensaje para que el nodo lo procese.
Terminal de anomalías Terminal de salida al que se propaga el mensaje de entrada si se detecta una anomalía durante un cálculo. Si ha seleccionado Tratar los avisos como errores, el nodo propaga el mensaje a este terminal si se devuelven mensajes de aviso de base de datos aún cuando el proceso se haya completado satisfactoriamente.
Terminal de salida Terminal de salida que imprime el mensaje después de la ejecución de la sentencia de base de datos.

En las siguientes tablas se describen las propiedades del nodo; la columna con la cabecera O indica si la propiedad es obligatoria (marcada con un asterisco en el diálogo de propiedades si se debe entrar un valor cuando no se ha definido ningún valor por omisión), la columna con la cabecera C indica si la propiedad es configurable (se puede cambiar el valor cuando se añade el flujo de mensajes al archivo bar para difundirlo).

Las propiedades básicas del nodo Mapping se describen en la siguiente tabla.

Propiedad O C Valor por omisión Descripción
Origen de datos No   Nombre de origen de datos ODBC de la base de datos en la que residen las tablas a las que se hacen referencia en las correlaciones asociadas a este nodo (identificadas por la propiedad Módulo de correlación.
Transacción No Automático Modalidad de transacción para el nodo. Los valores válidos son Automático o Confirmar.
Módulo de correlación No Correlación Nombre de la rutina de correlación que contiene las sentencias que se van a ejecutar contra la base de datos o el árbol de mensajes. La rutina es exclusiva a este tipo de nodo.
Modalidad de correlación No Mensaje Seleccione una de las opciones siguientes:
  • Mensaje
  • Entorno local
  • Entorno local y mensaje
  • Excepción
  • Excepción y mensaje
  • Excepción y entorno local
  • Todos
Tratar los avisos como errores No Sin seleccionar Trata los avisos SQL como errores. Si selecciona el recuadro, se lleva a cabo la acción.
Generar excepción cuando se produce un error en la base de datos No Seleccionada Los errores de base de datos pueden provocar que el intermediario genere una excepción. Si selecciona el recuadro, se lleva a cabo la acción.

Las propiedades de validación del nodo Mapping se describen en la siguiente tabla.

Propiedad O C Valor por omisión Descripción
Validar No Ninguno Si la validación se lleva o no a cabo. Los valores válidos son Ninguno y Contenido y valor.
Acción para anomalía No Excepción Lo que sucede si se produce una anomalía en la validación. Puede establecer esta propiedad sólo si Validar está establecido en Contenido y valor. Los valores válidos son Rastreo de usuario, Anotaciones de error locales y Excepción.
Incluir todas las limitaciones de valores No Seleccionada Esta propiedad no puede editarse. La acción por omisión, indicada por el recuadro de selección que se selecciona, es que se incluyan en la validación todas las restricciones.
Arreglo No Ninguno Esta propiedad no puede editarse. Se proporciona un arreglo mínimo.

Las propiedades de descripción del nodo Mapping se describen en la tabla siguiente:

Propiedad O C Valor por omisión Descripción
Descripción corta No No   Breve descripción del nodo.
Descripción larga No No   Texto que describe la utilidad del nodo en el flujo de mensajes.

Conceptos relacionados
Flujos de mensajes
Flujos de mensajes, correlaciones y ESQL
Editor de correlaciones de flujos de mensajes

Tareas relacionadas
Configuración de DB2
Cómo decidir los nodos que utilizar
Configuración de flujos de mensajes coordinados
Manejo de errores en flujos de mensajes
Desarrollo de correlaciones
Edición de propiedades configurables

Referencia relacionada
Mandato mqsichangebroker
Mandato mqsicreatebroker
Mandato mqsisetdbparms
Nodo Compute
Nodo DataInsert