Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

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

  

(Obrigatório)

Informações Gerais

 

Chamado2

Especificação

Produto

TSS

Módulo 

TSS TOTVS Service SOA

 

Segmento Executor

 SERVIÇOS

Projeto1 

M_SER_TSS002

IRM1 

PCREQ-8280

Requisito1 

PCREQ-8281

Subtarefa1

 

 

Release de Entrega Planejada 

12.1.13

Réplica

 

País

(  X X ) Brasil  (  X ) Argentina  (   ) Mexico  (   ) Chile  (  X ) Paraguai  ( X   ) Equador

X ) USA  ( X   ) 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). 

(Obrigatório)

 

Objetivo

 Definir um Definir o padrão para construção das funções que farão o de processamento das requisições recebidas pelo TSS.de Web service. 

Os serviços oferecidos pelo TSS são disponibilizados apenas através de Web Services baseado services baseados no protocolo SOAP, onde cada serviço é consumido através requisições feitas para métodos específicos dentro do TSS. Com o No modelo proposto pelo TSS 3.0, os serviços do TSS deverão estar estarão acessíveis tanto por web services Web service quanto por qualquer outra interface de integração com o TSS , assim como requisições HTTP que será utilizada serão utilizadas pela DLL de integração do TSS.  

 

(Obrigatório)

Definição da Regra de Negócio

Grande parte dos métodos de integração do TSS realizam o processamento das requisições no próprio corpo do método. Todos os métodos deverão estar desacoplados do processamento da requisição para que os métodos funcionem apenas como interface de integração. Como interface os métodos serão responsáveis apenas pela validações dos parâmetros da requisição e pela montagem do retorno do método enquanto o processamento das requisições será realizado através de chamadas para as funções de processamento.

Afim de facilitar a implementação será definido o seguinte padrão para as funções:

 

Nome das funções:

"TSPROC" + "Id Sequencial do processo" + "nome do Método" 

Os nomes das funções estarão definidos em uma lista de processos que será obtida através da função TSSGetficar , dessa forma as funções deverão ser criadas com o mesmo nome definido na lista de processos. 

Ex: TSPROC0001Remessa - Função para processamento de remessas do Web service NESBRA

Parâmetros

As funções receberão como parâmetro a mensagem JSON padrão definida para o TSS.(getJsonRequest() ).

A mensagem JSON recebida pela função já estará Deserializada e terá os mesmo parâmetros na mesma estrutura do recebida pelos Web Services, sendo necessario apenas subistituir as inicias " :: ou sef: " por:  "oJSON:receive" . 

Exemplo:

Acesso ao atributo  "TOKEN" através  do Web Service: "sef:TOKEN"

Acesso ao atributo TOKEN através do objeto JSON:  "oJSON:receive:token" .

 

retorno
O retorno 

  

Definir a função que irá executar o processamento segregado dos Web services. Será estruturada da seguinte forma:

  • Validação:

            A validação dos parâmetros das requisições serão definidas em uma função que será chamada pelo método ou poderá ser utilizada por qualquer outra interface que venha ser implementada para integração com o TSS. Abaixo a descrição da nomenclatura das funções:

 

  • Função:

           TSSVal + Código do Processo + Nome do Método

 

  • Parâmetro:

            oJSON 

            Exemplo:

            TSSVal0002AdmEmpresas(oJSON)

 

  • Processamento:

            A função de processamento envolverá todo o código compreendido após a validação da requisição. O processamento deverá retornar o resultado estruturado de acordo com o esperado pelo Web service. Da mesma forma as validações e o processamento receberão como parâmetro, um objeto desserializado com os parâmetros da requisição, possibilitando receber tanto os parâmetros passados pelos métodos via Web service como as mensagens no formato JSON (formato texto e completamente independente de linguagem) enviadas pela DLL. A nomenclatura será definida da seguinte forma:

 

  • Função:

            TSSProc + Código do Processo + Nome do Método

 

  • Parâmetro:

            oJSON

            Exemplo:

            TSSProc0002AdmEmpresas(oJSON)

Seguindo esse padrão, tanto a funções de validação quanto as de processamento, terão exatamente o mesmo código contido hoje no processamento dos Web service, sendo necessário apenas trocar a referência dos parâmetros da requisição, da referência "self:" ou "::" para a referência "oJSON".

Para Implementação, verificar a

 oJSONRet:send + "retorno do método"

 

Ex:  Metodo Remessa:

Parâmetros : 

oJSON:receive:UserToken,

oJSON:receive:Id_Ent, 

oJSON:receive:Nfe:NOTAS[nX]:XML

 

Retorno:

oJSON:send:NfeOk:ID

 

Após o processamento as funções deverão criar a mensagem JSON de resposta através da função  getJSONResponse() e disponibiliza-lá na lista de resposta de requisições.

Para Implementação, verificar lista com a especificação das funções a serem implementadas. A lista será , disponibilizada através da função TSSGetProcQueue()

Opcional

Protótipo de Tela

<Caso necessário inclua protótipos de telas com o objetivo de facilitar o entendimento do requisito, apresentar conceitos e funcionalidades do software>.

 

Opcional

 

Fluxo do Processo

 

Opcional

 

Dicionário de Dados

(Opcional)

Grupo de Perguntas

<Informações utilizadas na linha Protheus>.

(Opcional)

Consulta Padrão

<Informações utilizadas na linha Protheus>

 

 

 

(Opcional)

Estrutura de Menu

<Informações utilizadas na linha Datasul>.

Procedimentos

Programas 

Cadastro de Papéis

<O cadastro de papéis é obrigatório para os projetos de desenvolvimento FLEX a partir do Datasul 10>.

<Lembrete: o nome dos papeis em inglês descrito neste ponto do documento, devem ser homologados pela equipe de tradução>.

[1] Nome Verbalizado é obrigatório para desenvolvimentos no Datasul 10 em diante.

[2] Tipo é obrigatório para desenvolvimento no Datasul 10 em diante

[3] Categorias são obrigatórias para os programas FLEX.

[4] Obrigatório quando o projeto for FLEX

[5] Obrigatório quando o projeto for FLEX

[6] Obrigatório quando o projeto for FLEX

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