Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

Informações Gerais

 

Especificação

Produto

TSS

Módulo

TSS

Segmento Executor

SERVIÇOS

Projeto1

M_SER_TSS002

IRM1

PCREQ-8234

Requisito1

PCREQ-8235

Subtarefa1

 

Chamado2

12.1.13

País

( X ) Brasil  (  ) Argentina  (  ) México  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colômbia   (  ) Outro _____________.

 

Objetivo

Disponibilizar uma aplicação onde deverá ser enviado as requisições de contingencia para o TSS ONLINE. 

 

Definição da Regra de Negócio

A aplicação deverá realizar a leitura da Tabela DLL0001 com o objetivo de enviar as requisições de contingência para o TSS ONLINE. Este processo deverá ter a funcionalidade de envio de modo mult-Thread, para que seja realizado a “vazão” dessas requisições o mais rápido possível. 

O mecanismo de envio e consulta das requisições serão realizados enquanto o serviço da aplicação do TSS ONLINE estiver disponível e reiniciado a cada dois segundos. Assim a função principal deverá verificar se há conexão com o TSS ONLINE e realizar o disparo das threads principais, ou seja, de envio e consulta das requisições.

A função de envio e de consulta disparará as thread a cada registro. As threads de envio e de consulta das requisições serão controladas por semáforo, evitando conflitos com os registros, ou seja, não enviar mais de uma vez a requisição.

 


Função: JOB_DLL()

A função principal será responsável pela realização do processo de envio das requisições para o TSS ONLINE. Onde verificará se o serviço do TSS ONLINE está disponível, realizando o envio das requisições e a consulta dos mesmos, e seus respectivo controle de semáforos.

Este procedimento deverá ser realizado enquanto a aplicação estiver disponível e a cada dois segundos.

 

Parâmetros:

Nulo

Retorno:

Nulo


Função: dllGetRequest()

Função responsável pela busca das requisições enviadas para o TSS ONLINE.

Este processo buscará os registros da Tabela DLL0001, verificando se não estão deletados e que não possuem ticket relacionado. As requisições serão enviadas enquanto possuir registro e o serviço do TSS ONLINE estiver disponível.

Para cada requisição será realizado o controle de semáforo e o controle de tempo:

Para o controle de semáforo será utilizado nome da função concatenado com o Id da requisição;

Para o controle de tempo será utilizado uma variável global, onde, caso não consiga capturar o tempo armazenado será executado sem esta informação, caso contrário, será validado o tempo de execução, o qual  deverá executar novamente caso ultrapasse 5 minutos, assim disparado a thread para cada requisição.

Parâmetros:

cLockSend - Semáforo

Retorno:

Nulo


FunçãodllSendRequest()

Função responsável pelo envio das requisições para o TSS ONLINE.

Deverá inserir o tempo na variável global, posicionar na Tabela DLL0001, caso não tenha ticket informado realizará o envio da requisição através da função TSSPostQueueMessage(). Caso o retorno do TSS ONLINE seja o ticket irá armazena-lo  para que seja realizado o processo de consulta posteriormente. Caso contrário, o processamento de retorno do TSS ONLINE realizará a exclusão física do ticket. Na falha de envio da requisição, deverá somente realizar um log indicando a falha.

Parâmetros:

nRecno - Recno do registro da tabela DLL0001

cLockSend - Semáforo

Retorno:

Nulo


FunçãodllGetResponse()

Função responsável pelas consultas dos tickets das requisições que serão enviadas para o TSS ONLINE.

Este processo buscará os registros da Tabela DLL0001, verificando se não estão deletados e que possuem ticket relacionado. As requisições serão enviandas enquanto possuir registro e o serviço do TSS ONLINE estiver disponível.

Para cada requisição será realizado o controle de semáforo e o controle de tempo:

Para o controle de semáforo será utilizado nome da função concatenado com o Id da requisição;

Para o controle de tempo será utilizado uma variável global, onde, caso não consiga capturar o tempo armazenado será executado sem esta informação, caso contrário, será validado o tempo de execução, o qual  deverá executar novamente caso ultrapasse 5 minutos, assim disparado a thread para cada requisição.

Parâmetros:

cLockSend - Semáforo

Retorno:

Nulo


FunçãodllProcResponse()

Função responsável pela consulta da requisição.

Deverá inserir o tempo na variável global, posicionar na Tabela DLL0001 e realizar o envio da consulta através da função TSSPostQueueMessage().

Caso a consulta seja realizada com sucesso, realizar o processamento do retorno do TSS ONLINE e realizar a exclusão física do mesmo.

Na falha de envio da consulta da requisição, limpará o campo TICKET para o que o mesmo seja reenviado e relacionado a um novo ticket.

Parâmetros:

nRecno - Recno do registro da Tabela DLL0001 

cLockSend - Semáforo

Retorno:

Nulo

 

 

Fluxo do Processo

 


 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.