Sobre a Amostra CICS Transaction Server for z/OS Connectivity

A amostra CICS Transaction Server for z/OS Connectivity baseia-se em um cenário em que o objetivo é recuperar um registro de um recurso de arquivo que está definido para o CICS.

O diagrama a seguir mostra a arquitetura de utilização da conectividade do CICS em um fluxo de mensagens.

Uma ilustração da arquitetura de conectividade do CICS Transaction Server for z/OS.

A amostra CICS Transaction Server for z/OS Connectivity demonstra as seguintes tarefas:

O programa CICS DFH$AXCS recebe um COMMAREA para abrir, procurar e fechar um arquivo. DFH$AXCS é um programa que usa os dados de amostra FILEA que são fornecidos com CICS. O FILEA é um arquivo Key Sequenced Dataset (KSDS) que contém informações de conta de amostra e é indexado por um número de registro com seis caracteres. O DFH$AXCS acessa este arquivo e toma os argumentos de entrada de um comando, um nome de recurso do arquivo e um identificador do registro. O comando informa à amostra se ela deve abrir, navegar, atualizar ou fechar o arquivo. O recurso do arquivo faz referência a uma definição de recurso do arquivo instalado que mapeia para os dados KSDS reais. O número de registro é utilizado como a chave ao ler ou atualizar o arquivo. A amostra faz três chamadas para o CICS para abrir, procurar um registro e fechar o arquivo.

Mensagens de entrada

Três mensagens de entrada são fornecidas para execução da amostra CICS Transaction Server for z/OS Connectivity:

Mensagens de saída

Quatro mensagens de saída podem ser recebidas ao executar a amostra CICS Transaction Server for z/OS Connectivity:

Fluxos de Mensagens

O diagrama a seguir mostra o fluxo de mensagens da amostra CICS Transaction Server for z/OS Connectivity principal.

Captura de Tela do Fluxo de Mensagens Principal.

Tipo de Nó Nome de Nó
MQInput CICS_IN
Compute Set Open Command, Convert FILE not found to XML, Convert FILEA record to XML, Convert abend code to XML
CICSRequest Open FILEA
Filter Check FILEA opened
Subfluxo CICSConnectivityProcessFILEA
MQOutput CICS_OUT, CICS_ERROR

O diagrama a seguir mostra o subfluxo da mensagem da amostra CICS Transaction Server for z/OS Connectivity, CICSConnectivityProcessFILEA.

Uma captura de tela do subfluxo.

Tipo de Nó Nome de Nó
Input Input
Compute Set Browse Command, Set Close Command
CICSRequest Browse FILEA, Close FILEA
Out Output, Error

Para localizar mais informações sobre os nós que são usados na amostra CICS Transaction Server para z/OS Connectivity, consulte Nós integrados na documentação do WebSphere Message Broker.

Rota feita pelas mensagens do FILEA

Ao colocar uma das mensagens do FILEA na fila de entrada, a mensagem percorre os nós. Se qualquer uma das filas tiver sido desativada, a mensagem não pode seguir esse caminho.

A seção a seguir descreve a rota feita pelas mensagens do FILEA e a função dos nós no fluxo de mensagens da amostra CICS Transaction Server for z/OS Connectivity principal e no subfluxo da mensagem CICSConnectivityProcessFILEA:

  1. CICS_IN: O nó "CICS_IN" MQInput obtém a mensagem de entrada a partir da fila de entrada.
  2. Set Open Command: O nó Compute "Set Open Command" configura o conjunto, tipo e formato das mensagens a partir dos quais cria o COMMAREA para envio para o CICS. A estrutura do COMMAREA é conforme definido no arquivo comum dfh$axcs_cpybooks.cpy. O nó configura o parâmetro aberto que é requerido pelo programa CICS DFH$AXCS, que é: AXCS_COMMAND = 1. O nó também configura o parâmetro AXCS_FILE para o valor data.file que é especificado na mensagem de entrada XML. Finalmente, o nó armazena o valor data.record da mensagem de entrada XML para o ambiente local para uso na chamada do nó CICSRequest "Browse FILEA" subsequente.
  3. Open FILEA: O nó CICSRequest "Open FILEA" conecta-se ao CICS e abre o recurso FILEA. A propriedade CICS server do nó CICSRequest é configurada para usar o serviço configurávelCICSConnection, conforme descrito em Configurando a amostra do CICS Transaction Server para z/OS Connectivity. As propriedades Nome do programa e Comprimento do Commarea são configuradas e o COMMAREA que é criado no nó Compute "Set Open Command" é enviado para o CICS. O CICS executa o programa DFH$AXCS e FILEA é aberto. A estrutura do COMMAREA que é retornada para o WebSphere Message Broker a partir do CICS é a mesma do COMMAREA de saída, que é: dfh$axcs_cpybooks.cpy
  4. Check FILEA opened: O nó Filter "Check FILEA opened" executa uma verificação do código de retorno CICS para assegurar que o arquivo tenha sido aberto com êxito no sistema host. Se o FILEA foi aberto com êxito, a mensagem será propagada para o subfluxo CICSConnectivityProcessFILEA.
  5. Subfluxo CICSConnectivityProcessFILEA:
    1. Set Browse Command: O nó Compute "Set Browse Command" configura o parâmetro browse que é requerido pelo programa CICS DFH$AXCS, que é: AXCS_COMMAND = 2. O nó Compute "Set Browse Command" também recupera o valor data.record a partir do ambiente local e configura o parâmetro AXCS_RIFLD para informar ao programa DFH$AXCS qual registro a ser recuperado a partir do FILEA.
    2. Browse FILEA: "Browse FILEA" é um nó CICSRequest que instrui o CICS a navegar o FILEA e recuperar o registro.
    3. Set Close Command: O nó Compute "Set Close Command" configura o parâmetro close, que é: AXCS_COMMAND = 3.
    4. Close FILEA: O nó CICSRequest final, "Close FILEA", envia o COMMAREA para o CICS e o FILEA é fechado.
  6. Convert FILEA record to XML: Por todo esse fluxo de mensagens, a mensagem principal que está sendo propagada pelos nós é a COMMAREA que é criada pelo nó Compute "Set Open Command", que está sendo passado para e a partir do CICS. O principal item de interesse agora são os dados que são recuperados do nó CICSRequest "Browse FILEA". O nó Compute "Convert FILEA record to XML" cria uma mensagem XML que contém o fluxo transformado de bytes do registro FILEA e converte a mensagem para um formato XML, conforme exibido na seção Mensagens de Saída.
  7. CICS_OUT: O nó "CICS_OUT" MQOutput coloca a mensagem na fila de saída CICS_OUT.
  8. Convert abend code to XML: O nó Compute "Convert abend code to XML" manipula situações de erro. Cada um dos nós CICSRequest no fluxo e subfluxo de mensagens possui seus terminais de Erro conectados a este nó Compute. O nó Compute cria uma mensagem XML que contém o código de encerramento anormal do CICS, conforme exibido na seção Mensagens de Saída.
  9. CICS_ERROR: O nó "CICS_ERROR" MQOutput coloca a mensagem na fila de saída CICS_ERROR.

Rota feita pela mensagem FILEB

O rota feita pela mensagem FILEB é semelhante à rota feita pelas mensagens FILEA, mas com as seguintes diferenças:

  1. Open FILEA: O nó CICSRequest "Open FILEA" tenta abrir o FILEB, que é um arquivo inexistente na região do CICS do host.
  2. Check FILEA opened: O nó Filter "Check FILEA opened" determina um código de retorno 12 e a mensagem é propagada diretamente para o nó Compute "Convert FILE not found to XML".
  3. Convert FILE not found to XML: Porque não existe nenhum registro recuperado para o nó Compute "Convert FILE not found to XML" converter, o nó Compute "Convert FILE not found to XML" cria uma mensagem informativa.

Esta amostra demonstra como ler uma mensagem de entrada, conectar ao CICS, e recuperar um registro a partir do FILEA. Os dados de registro são transformados em XML e são liberados para uma fila. Se o arquivo não puder ser localizado, uma mensagem informativa é criada.

Para obter mais informações, consulte Trabalhando com o CICS Transaction Server for z/OS na documentação do WebSphere Message Broker.

Agora é possível concluir as etapas de configuração descritas em Configurando a amostra CICS Transaction Server for z/OS Connectivity antes de executar a amostra.

Voltar para Home da Amostra