Aperfeiçoamento de Mensagens Simples

Visão Geral

O cenário utiliza instâncias de repetição e requer as seguintes funções de mapeamento:
  • Entrada MRM, saída MRM (sem espaço de nomes)
  • Mapear origem de elemento simples e Complexo - destino
  • Mapear mesma origem do elemento - destino
  • Mapear origem de elemento diferente - destino
  • Mapear origem de atributo - destino
  • Mapear elemento unilateral (editar mapeamento)
  • Mapear atributo unilateral (editar mapeamento)
  • Desempenhar mapeamento de campo aritmético em numérico
  • Mapear elemento de repetição simples - única instância
  • Mapear todas as instâncias de um elemento de repetição simples
  • Sem cabeçalho MQRFH2

Utilize as ferramentas do Message Broker para criar fluxos de mensagens e conjuntos de mensagens e para criar e implementar arquivos bar (broker archive). Também é necessário criar um gerenciador de configuração e um intermediário. Nas ferramentas Message Broker, crie uma conexão de domínio com o gerenciador de configuração e crie um intermediário no domínio. Também é requerido um método para entrada de mensagens da instância que podem (opcionalmente) conter cabeçalhos MQRFH2, por exemplo, argoput, rfhutil.

Etapa 1. Desenvolver Fluxo e Modelos de Mensagem para Mapeamento de Elementos Simples/Complexos, Mesma Origem e Destino, Elemento de Origem e de Destino Diferente e Origem e Destino de Atributo, Alterar Alguns Valores de Campo e Criar Documentos de Instâncias

  1. Na perspectiva Desenvolvimento de Aplicativos, crie um projeto do conjunto de mensagens e um conjunto de mensagens MAPPING3_SIMPLE_messages (espaço de nomes ativado com formato de ligação XML) e um arquivo de definição de mensagem (sem espaço de nomes de destino) SIMPLE.
  2. Crie uma mensagem addev1 com a seguinte estrutura:
    addev1
            ssat          (xsd:string) atributo local
            ssel          (xsd:string) elemento local
            dsel1        (xsd:string) elemento local
            atel           elemento complexo local
                 latt       (xsd:string) atributo
            cel1          elemento complexo local
                 intel     (xsd:int) elemento local
                 strel     (xsd:string) elemento local
            dsel2         (xsd:string) elemento global
            cel2           (cel2ct) tipo complexo global
                intel        (xsd:int) elemento local
                fltel         (xsd:float) elemento local
  3. Crie um projeto do fluxo de mensagens MAPPING3_SIMPLE_flows.
  4. Crie um fluxo de mensagens, addev1, contendo: MQInput -> Mapping -> MQOutput.
  5. No Editor de Mapeamento de Mensagens, abra o mapa e selecione a mensagem addev1 como origem e destino
  6. Expanda todos os níveis de mensagens e ligue:
    ssat --- ssat
    ssel --- ssel
    dsel1 -- dsel2
    latt ---- latt
    cel1 --- cel1
    dsel2 -- dsel1
    (cel2)
       intel ---- fltel
       fltel ---- intel
  7. No editor de planilha, configure a seguinte expressão:
    dsel1  |  esql:upper($source/addev1/dsel2)
    @latt  |   esql:upper($source/addev1/atel/@latt)
    (cel2)
        intel   |  $source/addev1/cel2/fltel + 10
        fltel    |  $source/addev1/cel2/intel div 10
  8. Crie um documento da instância com o cabeçalho RFH2 apropriado e os seguintes dados:
    <addev1 ssatt="hello">
    <ssel>this</ssel>
    <dsel1>first</dsel1>
    <atel latt="attrib"/>
    <cel1>
    <intel>2</intel>
    <strel>lcomp</strel>
    </cel1>
    <dsel2>second</dsel2>
    <cel2>
    <intel>252</intel>
    <fltel>3.89E+1</fltel>
    </cel2>
    </addev1>
Resultado da etapa 1: Conjunto de mensagens MAPPING3_SIMPLE_messages criado e ocupado com a mensagem addev1. Fluxo de mensagens addev1 criado no projeto MAPPING3_SIMPLE_flows contendo o mapeamento addev1_Mapping.msgmap. Criado arquivo contendo a mensagem da instância.

Etapa 2. Implementar o Conjunto de Mensagens e o Fluxo de Mensagens e Executar os Dados por meio do Intermediário

  1. Crie um arquivo bar, addev1.
  2. Inclua o conjunto de mensagens MAPPING3_SIMPLE_messages e o fluxo de mensagens addev1 no arquivo bar.
  3. Implemente o arquivo bar no intermediário.
  4. Coloque o documento da instância na fila de entrada.
Resultado da etapa 2: A mensagem de saída deve estar no formato:
<addev1 ssat="hello">
<ssel>this</ssel>
<dsel1>SECOND</dsel1>
<atel latt="ATTRIB"/>
<cel1>
<intel>2</intel>
<strel>lcomp</strel>
</cel1>
<dsel2>first</dsel2>
<cel2>
<intel>48</intel>
<fltel>2.5E+1</fltel>
</cel2>
</addev1>

Etapa 3. Desenvolver Fluxo e Modelos de Mensagem para Mapeamento de Elemento e Atributo Únicos de Saída (Destino) (Sem Mensagem de Entrada) e Criar Documentos da Instância

  1. Crie uma mensagem addev2 com a seguinte estrutura:
    addev2
        matt             (xsd:string) atributo local
        ssel              (xsd:string) elemento local
        csel              elemento complexo local
            elatt          (xsd:string)  atributo local
  2. Crie um segundo acionador de mensagem com o seguinte acionador de estrutura:
    trigger
       start               (xsd:string) elemento local
  3. Crie um fluxo de mensagens addev2 contendo: MQInput -> Mapping -> MQOutput.
  4. Abra o mapa e selecione trigger como a origem e addev2 como o destino.
  5. Na área de janela da planilha, expanda totalmente a mensagem de destino e configure os campos de destino da seguinte forma:
    matt    |   'first attribute'
    ssel     |   'string element'
    elatt     |   'second attribute'
  6. Expanda a pasta Propriedades na planilha e configure:
    MessageType   |   'addev2'
  7. Crie um documento da instância com o cabeçalho RFH2 apropriado e os seguintes dados:
    <trigger>
    <start>yes</start>
    </trigger>
Resultado da etapa 3: Mensagens addev2 e trigger são criadas. É criado o fluxo de mensagens addev2 contendo o mapeamento addev2_Mapping.msgmap. O arquivo contendo a mensagem da instância é criado.

Etapa 4. Implementar o Conjunto de Mensagens e o Fluxo de Mensagens e Executar os Dados por meio do Intermediário

  1. Crie um arquivo bar, addev2.
  2. Inclua o conjunto de mensagens MAPPING3_SIMPLE_messages e o fluxo de mensagens addev2 no arquivo bar.
  3. Implemente o arquivo bar no intermediário.
  4. Coloque o documento da instância na fila de entrada.
Resultado da etapa 4: A mensagem de saída deve estar no formato:
<addev2 matt="first attribute">
<ssel>string element</ssel>
<csel elatt="second attribute"></csel>
</addev2>

Etapa 5. Desenvolver Fluxo e Modelos de Mensagem para Lidar com uma Única Instância e Todas as Instâncias de Elementos de Repetição

  1. Crie uma mensagem addev3 com a seguinte estrutura:
    addev3
        frepstr        (xsd:string) elemento local, minOcc=3, maxOcc=3
        vrepstr       (xsd:string) elemento local, minOcc=1, maxOcc=4
        urepstr       (xsd:string)  elemento local, minOcc=1, maxOcc=-1
  2. Crie um fluxo de mensagens addev3 contendo: MQInput -> Mapping -> MQOutput.
  3. Abra o mapa e selecione addev3 como a origem e o destino
  4. Na área de janela superior, mapeie cada origem para o destino correspondente:
    frepstr --- frepstr
    vrepstr --- vrepstr
    urepstr --- urepstr
  5. Expanda totalmente o destino addev3 na área de janela da planilha.
  6. Para a entrada vrepstr, realce e exclua o item For acima dela.
  7. Crie uma mensagem da instância com o cabeçalho RFH2 apropriado e os seguintes dados:
    <addev3>
    <frepstr>this</frepstr>
    <frepstr>that</frepstr>
    <frepstr>other</frepstr>
    <vrepstr>only one</vrepstr>
    <vrepstr>extra</vrepstr>
    <urepstr>first</urepstr>
    <urepstr>second</urepstr>
    <urepstr>third</urepstr>
    <urepstr>fourth</urepstr>
    <urepstr>fifth</urepstr>
    </addev3>
Resultado da etapa 5: A mensagem addev3 foi criada. É criado o fluxo de mensagens addev3 contendo o mapeamento addev3_Mapping.msgmap. O arquivo contendo a mensagem da instância é criado.

Etapa 6. Implementar o Conjunto de Mensagens e o Fluxo de Mensagens e Executar os Dados por meio do Intermediário

  1. Crie um arquivo bar, addev3.
  2. Inclua o conjunto de mensagens MAPPING3_SIMPLE_messages e o fluxo de mensagens addev3 no arquivo bar.
  3. Implemente o arquivo bar no intermediário.
  4. Coloque o documento da instância na fila de entrada.
Resultado da etapa 6: A mensagem de saída deve estar no formato:
<addev3>
<frepstr>this</frepstr>
<frepstr>that</frepstr>
<frepstr>other</frepstr>
<vrepstr>only one</vrepstr>
<urepstr>first</urepstr>
<urepstr>second</urepstr>
<urepstr>third</urepstr>
<urepstr>fourth</urepstr>
<urepstr>fifth</urepstr>
</addev3>

Etapa 7. Desenvolver Fluxo e Modelos de Mensagem para uma Mensagem Simples sem um Cabeçalho RFH2

  1. Crie um projeto do conjunto de mensagens e um conjunto de mensagens MAPPING3_SIMPLE_xml.
  2. Na página de parâmetros do conjunto de mensagens, configure o Analisador de Tempo de Execução como XML.
  3. Crie um arquivo de definição de mensagem, SIMPLE.
  4. Crie uma mensagem addev4 com a seguinte estrutura:
    addev4
       str1                   (xsd:string)  elemento local
       cel                     elemento complexo local
           int1                  (xsd:int) elemento local
           bool1               (xsd:boolean) elemento local
  5. Crie um fluxo de mensagens addev4 contendo: MQInput -> Mapping -> MQOutput.
  6. Na página de propriedades Padrão do nó MQInput, configure o Domínio de Mensagem como XML.
  7. Abra o mapa e selecione addev4 como a origem e o destino.
  8. Mapeie as entradas para as saídas correspondentes:
    str1 --- str1
    int1 --- int1
    bool1 --- bool1
  9. Crie uma mensagem da instância sem um cabeçalho RFH2 e os seguintes dados:
    <addev4>
    <str1>this</str1>
    <cel>
    <int1>452</int1>
    <bool1>0</bool1>
    </cel>
    </addev4>
Resultado da etapa 7: Criado o conjunto de mensagens MAPPING3_SIMPLE_xml contendo a mensagem addev4 create. Criado o fluxo de mensagens addev4 contendo o mapeamento addev4_Mapping.msgmap. O arquivo contendo a mensagem da instância é criado.

Etapa 8. Implementar o Conjunto de Mensagens e o Fluxo de Mensagens e Executar os Dados por meio do Intermediário

  1. Crie um arquivo bar, addev4.
  2. Inclua o fluxo de mensagens addev4 no arquivo bar.
  3. Implemente o arquivo bar no intermediário.
  4. Coloque o documento da instância na fila de entrada.
Resultado da etapa 8: A mensagem de saída deve estar no formato:
<addev4>
<str1>this</str1>
<cel>
<int1>452</int1>
<bool1>0</bool1>
</cel>
</addev4>

Resumo de Etapas 1 a 8

  1. Conjunto de mensagens MAPPING3_SIMPLE_messages criado e ocupado com a mensagem addev1. Fluxo de mensagens addev1 criado no projeto MAPPING3_SIMPLE_flows contendo o mapeamento addev1_Mapping.msgmap. Criado arquivo contendo a mensagem da instância.
  2. A mensagem de saída deve estar no formato:
    <addev1 ssat="hello">
    <ssel>this</ssel>
    <dsel1>SECOND</dsel1>
    <atel latt="ATTRIB"/>
    <cel1>
    <intel>2</intel>
    <strel>lcomp</strel>
    </cel1>
    <dsel2>first</dsel2>
    <cel2>
    <intel>48</intel>
    <fltel>2.5E+1</fltel>
    </cel2>
    </addev1>
  3. Mensagens addev2 e trigger são criadas. É criado o fluxo de mensagens addev2 contendo o mapeamento addev2_Mapping.msgmap. O arquivo contendo a mensagem da instância é criado.
  4. A mensagem de saída deve estar no formato:
    <addev2 matt="first attribute">
    <ssel>string element</ssel>
    <csel elatt="second attribute"></csel>
    </addev2>
  5. A mensagem addev3 é criada. É criado o fluxo de mensagens addev3 contendo o mapeamento addev3_Mapping.msgmap. O arquivo contendo a mensagem da instância é criado.
  6. A mensagem de saída deve estar no formato:
    <addev3>
    <frepstr>this</frepstr>
    <frepstr>that</frepstr>
    <frepstr>other</frepstr>
    <vrepstr>only one</vrepstr>
    <urepstr>first</urepstr>
    <urepstr>second</urepstr>
    <urepstr>third</urepstr>
    <urepstr>fourth</urepstr>
    <urepstr>fifth</urepstr>
    </addev3>
  7. Criado o conjunto de mensagens MAPPING3_SIMPLE_xml contendo a mensagem addev4 create. Criado o fluxo de mensagens addev4 contendo o mapeamento addev4_Mapping.msgmap. O arquivo contendo a mensagem da instância é criado.
  8. A mensagem de saída deve estar no formato:
    <addev4>
    <str1>this</str1>
    <cel>
    <int1>452</int1>
    <bool1>0</bool1>
    </cel>
    </addev4>
Tarefas relacionadas
Exemplo: Criando, Configurando e Implementando um Mapeamento de Mensagens
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2005 Última Atualização: 04/11/2005
ar25249_