Criando o Fluxo de Mensagens

O fluxo de mensagens Vídeo é fornecido, mas se preferir, você poderá criá-lo.

Utilize as seguintes instruções para criar o fluxo de mensagens Vídeo. Existem instruções detalhadas para algumas das seguintes etapas; para acessá-las, clique no link fornecido no final da etapa.

  1. Alterne para a perspectiva Broker Application Development.
  2. Crie um novo projeto de fluxo de mensagens denominado Fluxos de Mensagens de Vídeo. Para obter instruções, consulte Criando um projeto de fluxo de mensagens.
  3. Crie um novo fluxo de mensagens denominado Video_Test. Para obter instruções, consulte Criando um Fluxo de Mensagens.
  4. No editor Fluxo de Mensagens, inclua e renomeie os nós listados na seguinte tabela. Para obter instruções, consulte Incluindo um Nó.
    Tipo de Nó Nome do Nó
    MQInput VIDEO_XML_IN
    MQInput VIDEO_TDS_IN
    MQInput VIDEO_CWF_IN
    MQOutput VIDEO_OUT
    MQOutput VIDEO_FAIL
    Compute Extract Fields
  5. Conecte os nós conforme listado na tabela a seguir. Para obter instruções, consulte Conectando Nós.
    Para verificar se os nós foram conectados corretamente, consulte a figura em Sobre o Fluxo de Mensagens de Vídeo.
    Nome do Nó Terminal Conectar a esse Nó
    VIDEO_XML_IN Failure VIDEO_FAIL
    Out Extract Fields
    Catch VIDEO_FAIL
    VIDEO_TDS_IN Failure VIDEO_FAIL
    Out Extract Fields
    Catch VIDEO_FAIL
    VIDEO_CWF_IN Failure VIDEO_FAIL
    Out Extract Fields
    Catch VIDEO_FAIL
    Extract Fields Out VIDEO_OUT
  6. Configure as propriedades do nó conforme listadas na tabela a seguir. Aceite os valores padrão para todas as propriedades, a menos que seja listado um valor alternativo na tabela. Para obter instruções, consulte Configurando um Nó.
    Para os nós VIDEO_XML_IN, VIDEO_TDS_IN e VIDEO_CWF_IN, você precisa definir a propriedade do identificador do conjunto de mensagens. Cada conjunto de mensagens possui um identificador exclusivo. Para saber qual é o identificador do conjunto de mensagens criado:
    1. No Resource Navigator, expanda a árvore de navegação: Mensagens de Vídeo > Vídeo >messageSet.mset.
    2. Dê um clique duplo em messagetSet.mset para abri-lo.
    3. Seu identificador de conjunto de mensagens exclusivo é exibido no campo ID do Conjunto de Mensagens.
    Nome do Nó Ativo Propriedade Valor
    VIDEO_XML_IN Básico Nome da fila VIDEO_XML_IN
    Padrão Domínio de Mensagens MRM
    Padrão Conjunto de Mensagens (Selecione seu identificador exclusivo do conjunto de mensagens)
    Padrão Tipo de Mensagem Customer
    Padrão Formato de Mensagem XML1
    VIDEO_TDS_IN Básico Nome da fila VIDEO_TDS_IN
    Padrão Domínio de Mensagens MRM
    Padrão Conjunto de Mensagens (Selecione seu identificador exclusivo do conjunto de mensagens)
    Padrão Tipo de Mensagem Customer
    Padrão Formato de Mensagem TDS1
    VIDEO_CWF_IN Básico Nome da fila VIDEO_CWF_IN
    Padrão Domínio de Mensagens MRM
    Padrão Conjunto de Mensagens (Selecione seu identificador exclusivo do conjunto de mensagens)
    Padrão Tipo de Mensagem Customer
    Padrão Formato de Mensagem CWF1
    VIDEO_FAIL Básico Nome da fila VIDEO_FAIL
    Extract Fields Básico Módulo ESQL Video_Test_Compute
    VIDEO_OUT Básico Nome da fila VIDEO_OUT
  7. Adicione os seguintes módulos de código ESQL ao arquivo Video_Test.esql. Você pode copiar e colar o código ESQL diretamente no arquivo esql, se desejar.
    Para obter instruções, consulte Desenvolvendo ESQL.
    CREATE COMPUTE MODULE Video_Test_Compute
       CREATE FUNCTION Main() RETURNS BOOLEAN
       BEGIN
          -- Este ESQL extrai alguns dos campos da mensagem de entrada
          -- apenas para demonstrar as referências utilizadas para campos em
          -- espaços de nomes diferentes
    
    	  SET OutputRoot = InputRoot;
          DECLARE addr NAMESPACE 'http://www.ibm.com/AddressDetails';
          DECLARE brw NAMESPACE 'http://www.ibm.com/BorrowedDetails';
          DECLARE I INTEGER;
    
    SET OutputRoot.MRM.Name = InputRoot.MRM.Name;
    SET OutputRoot.MRM.addr:Address = InputBody.addr:Address;
    
    IF InputRoot.MRM.ID ='P' THEN
    SET OutputRoot.MRM.PassportNo = InputBody.PassportNo;
    ELSEIF InputRoot.MRM.ID ='D' THEN SET OutputRoot.MRM.DrivingLicenseNo=InputBody.DrivingLicenseNo; ELSEIF InputRoot.MRM.ID ='C' THEN SET OutputRoot.MRM.CreditCardNo=InputBody.CreditCardNo;
    END IF; SET I=1; WHILE I<= CARDINALITY(InputBody.brw:Borrowed.*[]) DO SET OutputRoot.MRM.brw:Borrowed[I].VideoTitle = InputBody.brw:Borrowed[I].VideoTitle; SET OutputRoot.MRM.brw:Borrowed[I].DueDate=InputBody.brw:Borrowed[I].DueDate + INTERVAL '1' DAY; SET OutputRoot.MRM.brw:Borrowed[I].Cost=InputBody.brw:Borrowed[I].Cost*2; SET I=I+1; END WHILE; SET OutputRoot.MRM.Magazine = InputBody.Magazine; RETURN TRUE; END; END MODULE

Ícone Página Principal   Voltar para Home da Amostra