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.
- Alterne para a perspectiva Broker Application Development.
- 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.
- Crie um novo fluxo de mensagens denominado Video_Test. Para obter instruções, consulte Criando um Fluxo de Mensagens.
- 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 |
- 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 |
- 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:
- No Resource Navigator, expanda a árvore de navegação: Mensagens de Vídeo > Vídeo >messageSet.mset.
- Dê um clique duplo em messagetSet.mset para abri-lo.
- 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 |
- 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
Voltar para Home da Amostra