Desenvolver um Fluxo de Mensagens para Mapear Campos de Destino de Vários Outros Campos

Antes de começar
Execute as etapas do seguinte tópico:
  1. Desenvolver um Fluxo de Mensagens que Contém Outros Nós
Este é o terceiro estágio do cenário para executar enriquecimento de mensagem simples. Este tópico demonstra como desenvolver um fluxo de mensagens para mapear os campos de destino de vários outros campos e também envolve o desenvolvimento de modelos de mensagens e documentos de instâncias correspondentes.
  1. Na definição de mensagem COMPLEX, no espaço de nomes www.complex.net, crie uma mensagem chamada addev2, que tenha a seguinte estrutura:
    addev2
       firstname             (xsd:string) elemento local
       lastname              (xsd:string) elemento local
       branch                 (xsd:string) elemento local
       accountno            (xsd:string) elemento local
       balance                (xsd:decimal) elemento local
       transvalue             elemento complexo local, tipo base xsd:decimal
          transdir             (xsd:string) atributo local
  2. No conjunto de mensagens MAPPING3_COMPLEX_messages, crie um novo arquivo de definição de mensagem chamado COMP2, que possui o espaço de nomes de destino www.comp2.net, com o prefixo c2.
  3. Na definição de mensagem COMP2, crie uma mensagem chamada addev2out, que tenha a estrutura:
    addev2out
        accountdetails      (xsd:string) elemento local
        transvalue            (xsd:decimal) elemento local
        balance                (xsd:decimal) elemento local
  4. Crie um fluxo de mensagem chamado addev2, que contenha o seguinte mapeamento: MQInput -> Mapeamento -> MQOutput.
  5. Abra o mapa e selecione addev2 como a origem e addev2out como o destino.
  6. Ligue a origem ao destino da seguinte maneira:
    accountno --- accountdetails
    balance --- balance
    transvalue --- transvalue
  7. Na área de janela Planilha, expanda Propriedades e configure os seguintes valores:
    MessageType   |     'addev2out'
  8. Configure o destino accountdetails para fn:concat($source/comp:addev2/accountno, $source/comp:addev2/branch, $source/comp:addev2/lastname, $source/comp:addev2/firstname).
  9. Clique com o botão direito do mouse no destino transvalue e clique em If.
  10. Altere a condição de fn:true() para $source/comp:addev2/transvalue/@transdir = 'DEBIT'.
  11. Selecione transvalue e configure seu valor para $source/comp:addev2/transvalue * (-1).
  12. Clique com o botão direito na condição e clique em Else.
  13. Clique com o botão direito do mouse no destino balance e clique em If.
  14. Altere a condição de fn:true() para $source/comp:addev2/transvalue/@transdir = 'DEBIT'.
  15. Selecione balance e configure seu valor para $source/comp:addev2/balance - $source/comp:addev2/transvalue.
  16. Clique com o botão direito do mouse na condição e clique em Condição.
  17. Altera a condição de fn:true() para $source/comp:addev2/transvalue/@transdir = 'CREDIT'.
  18. Selecione balance após a segunda condição e configure seu valor para $source/comp:addev2/balance + $source/comp:addev2/transvalue.
  19. Crie duas mensagens de instância com os cabeçalhos RFH2 apropriados:
    <comp:addev2 xmlns:comp="http://www.complex.net">
    <firstname>Brian</firstname>
    <lastname>Benn</lastname>
    <branch>52-84-02</branch>
    <accountno>567432876543</accountno>
    <balance>1543.56</balance>
    <transvalue transdir="DEBIT">25.28</transvalue>
    </comp:addev2>
    <comp:addev2 xmlns:comp="http://www.complex.net">
    <firstname>Brian</firstname>
    <lastname>Benn</lastname>
    <branch>52-84-02</branch>
    <accountno>567432876543</accountno>
    <balance>1543.56</balance>
    <transvalue transdir="CREDIT">25.28</transvalue>
    </comp:addev2>
Você criou os seguintes recursos:
Agora, implemente o conjunto de mensagens e o fluxo de mensagens

Implementar o Conjunto de Mensagens e o Fluxo de Mensagens

Este é o quarto estágio do cenário para executar enriquecimento de mensagem simples. Este tópico demonstra como implementar o conjunto de mensagens e o fluxo de mensagens e executar as mensagens da instância através do intermediário.
  1. Crie um arquivo bar chamado addev2.
  2. Inclua o conjunto de mensagens MAPPING3_COMPLEX_messages e o fluxo de mensagens addev2 no arquivo bar.
  3. Implemente o arquivo bar no intermediário.
  4. Coloque os documentos da instância na fila de entrada.
As mensagens de saída serão similares a:
<c2:addev2out xmlns:c2="http://www.comp2.net" xmlns:comp="http://www.complex.net">
<accountdetails>567432876543 52-84-02 Benn Brian</accountdetails>
<transvalue>-25.28</transvalue>
<balance>1518.28</balance>
</c2:addev2out>
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ar25251_3_