Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|
Especificação | |||
Produto | TSS | Módulo | TSS |
Segmento Executor | SERVIÇOS | ||
Projeto1 | M_SER_TSS002 | IRM1 | PCREQ-8272 |
Requisito1 | PCREQ-8273 | Subtarefa1 |
|
Release de Entrega Planejada | 12.1.13 | Réplica |
|
País | (X) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. | ||
Outros | <Caso necessário informe outras referências que sejam pertinentes a esta especificação. Exemplo: links de outros documentos ou subtarefas relacionadas>. |
Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos).
Definir a estrutura padrão para a segregação dos métodos Web services dos TSS. A segregação dos métodos será necessária para que as funcionalidades do TSS estejam disponíveis tanto por chamadas via Web service quanto para as chamadas que serão realizadas pelo TSS OFFLINE, que será realizada através de comunicação via HTTP, com mensagens no formato JSON, (formato texto e completamente independente de linguagem). Dessa os serviços oferecidos pelo TSS estarão disponíveis para acesso através de qualquer interface de comunicação.
Para que os métodos do TSS funcionem apenas como uma interface de comunicação entre os ERPs e o TSS, os métodos deverão ser reestruturados, ficando livres de qualquer acoplamento de implementação de processamento e persistência de dados na camada do Web service.
Os métodos deverão conter apenas a chamada para função de verificação do serviço que está sendo utilizado para o processamento da requisição, depende da origem do TSS que esta configurado, de acordo com o serviço, realizar o processamento correto da requisição correto e a verificação do retorno para o Web serviceretornar como resposta a estrutura hoje existente.
Tanto a função de processamento quanto a função de validação, serão originadas a partir da segregação do método.
As entradas de requisições para processamento via TSS OFFLINE ou sem TSS OFFLINE, serão realizadas através dos mesmos métodos já existentes no TSS. De acordo com a configuração do appserver, as requisições seguirão o fluxo descrito abaixo.
Caso a requisição seja recebida para processamento via TSS OFFLINE, o processo será direcionado para a função TSSAnalyseReq() que fará a verificação que do serviço configurado e assim a função TSSBrokerReq() que fará o processamento, caso contrário, a requisição será enviada para a função responsável pelo processamento da requisição via Web service. Todos os métodos deverá ser definidos com a seguinte estrutura:
WSMETHOD XXXXXXXXX WSRECEIVE XXXXXX, XXXXXX, XXXXXXX WSSEND XXXX WSSERVICE XXXXXX
local cError := ""
local lRetorno := .T.
if TSSAnalyseReq()
self:X := TSSBrokerReq( self, @cError )
else
if( lRetorno := TSValXXXXXXXXXX self, @cError) )
self:X := TSProcXXXXXXXXXX( self, @cError )
else
self:X := nil
endif
endif
if !( lRetorno := valType(self:ID_ENT) <> "U" ))
setSoapFault(WS_PROC, cError )
endif
delClassIntf()
return finishSped(lRetorno)
Onde TSSProcXXXXXXXXXX será o nome da função de processamento segregada do método via Web service. TSValXXXXXXXXXX será o nome da função de validação da requisição segregada do método via Web service.
1. Fluxo Principal:
1.1. Realiza validação da Requisição; a verificação do serviço configurado.
1.2.Requisição inválida;[2.1]
1.3. Verifica se o processamento passara pela DLL;
Se o serviço é específico, a requisição será enviada para a função TSSBrokerReq().
1.3. Caso 1.4. Se o processamento for para DLL, envia requisição para função DLLpRocRequest. caso contrário executa função de validação e processamento do método;
1.5. Retorno Inválido;[2.2]1.64. Se retorno for nulo (nil), retorna Soap Fault com erro do processo.
1.5. Caso contrário retorna resultado de acordo com estrutura esperada pelo Web service;
1.7. Realiza 6 Realiza limpeza do objetos instanciados;
2. Fluxo Secundário
2.1. Falha na validação
2.1.1. Retorna String Soap Fault com erro da validação;
2.1. Falha no processamento
2.1.1. Retorna String Soap Fault com erro do processamento;
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|