WebSphere Message Broker, Versión 8.0.0.5 Sistemas operativos: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte la información sobre la última versión del producto en IBM Integration Bus, Versión 9.0

Conversión de datos en un mensaje

Puede convertir datos de un formato a otro.

Por ejemplo, si los elementos se conocen en un mensaje por los nombres y en otro mensaje por los números, es necesario convertir los datos. Por ejemplo:

Type Name          Type Code

Confectionary      2000
Newspapers         3000
Hardware           4000

Observe el mensaje de entrada siguiente:

<Data>
  <Items>
    <Item>
      <Cat>1000</Cat>
      <Description>Milk Chocolate Bar</Description>
      <Type>Confectionary</Type>
    </Item>
    <Item>
      <Cat>1001</Cat>
      <Description>Daily Newspaper</Description>
      <Type>NewsPapers</Type>
    </Item>
    <Item>
      <Cat>1002</Cat>
      <Description>Kitchen Sink</Description>
      <Type>Hardware</Type>
    </Item>
  </Items>
  <TranslateTable>
    <Translate>
      <Name>Confectionary</Name>
      <Number>2000</Number>
    </Translate>
    <Translate>
      <Name>NewsPapers</Name>
      <Number>3000</Number>
    </Translate>
    <Translate>
      <Name>Hardware</Name>
      <Number>4000</Number>
    </Translate>
  </TranslateTable>
</Data>

Este mensaje tiene dos secciones; la primera sección es una lista de elementos en la que cada elemento tiene un número de catálogo y un tipo; la segunda sección es una tabla para conversión entre nombres de tipo descriptivo y códigos de tipo numérico. Incluya un nodo Compute con la siguiente transformación:

SET OutputRoot.XMLNS.Result.Items.Item[] = 
   (SELECT M.Cat, M.Description, T.Number As Type
     FROM 
       InputRoot.XMLNS.Data.Items.Item[]               As M,
       InputRoot.XMLNS.Data.TranslateTable.Translate[] As T
     WHERE M.Type = T.Name
   );

Se genera el mensaje de salida siguiente:

<Result>
  <Items>
    <Item>
      <Cat>1000</Cat>
      <Description>Milk Chocolate Bar</Description>
      <Type>2000</Type>
    </Item>
    <Item>
      <Cat>1001</Cat>
      <Description>Daily Newspaper</Description>
      <Type>3000</Type>
    </Item>
    <Item>
      <Cat>1002</Cat>
      <Description>Kitchen Sink</Description>
      <Type>4000</Type>
    </Item>
  </Items>
</Result>

En el resultado, cada nombre de tipo se ha convertido a su código correspondiente. En este ejemplo, tanto los datos como la tabla de conversión estaban en el mismo árbol de mensaje aunque esto no es un requisito. Por ejemplo, la tabla de conversión se puede codificar en una base de datos o la puede haber configurado en LocalEnvironment un nodo Compute anterior.

Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Comentarios

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última actualización:
        
        Última actualización: 2015-02-28 16:59:59


Tema de tareaTema de tarea | Versión 8.0.0.5 | ak05790_