Versões comparadas

Chave

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

NOME DO REQUISITO

Linha de Produto:

T-Reports

Segmento:

T-Reports

Módulo:

T-Reports.


  1. Pré-requisitos
    1. Plataforma com suporte REST e autenticação Basic.
    2. Suporte a a tratamento cross-domain, por conta das requisições de serviços em servidores de domínio diferente.
    3. O modelo de implementação da dessa API T-Reports foi criado seguindo o documento "Guia de implementação de API" disponível no link abaixo:
      http://tdn.totvs.com/pages/viewpage.action?pageId=274849083
    4. Plataforma com suporte REST e autenticação Basic.
    5. Suporte a a tratamento cross-domain, por conta das requisições de serviços em servidores de domínio diferente.

  2. Definições gerais
    1. Os retornos dos serviços REST devem estar encapsulados dentro de um objeto JSON com a seguinte especificação:
      Mensagens de erro

      Para todas as mensagens que representam um erro (códigos HTTP 4xx e 5xx) deve-se retornar obrigatoriamente os campos a seguir:

      {
          code: "Código identificador do erro",
          message: "Literal no idioma da requisição descrevendo o erro para o cliente",
          detailedMessage: "Mensagem técnica e mais detalhada do erro"
      }


      Mensagens de sucesso

      Mensagens de sucesso (código http 2xx devem) devem retornar diretamente a entidade que representa o objeto resultado da operação do endpoint. Ex:

      GET http://totvs.com.br/api/trep/v1/dataproviders/1

      {
        code: "0001",
        description: "provedor de DB"

      ...
      }



    2. Todas as linhas de produto deverão estabelecer uma URL base, a partir da qual os serviços REST de provedor integrado de "banco de dados" serão disponibilizados. 

      Todos os caminhos descritos neste documento serão relativos a esta URL base.

    3. Como exemplo, no ERP RM foi definida a seguinte  URL base: 
      /api/trep/v1/dbdataproviders/ 

      Informações

      Com o intuito de facilitar o entendimento do documento, a URL base do RM descrita acima será utilizada no restante do documento.


  3. Descrição dos serviços

    Os serviços REST descritos a seguir estão divididos em:

    • Serviço de leitura de parâmetros gerais;
    • Serviço de teste de conexão;
    • Serviço de teste de sentença sql;
    • Serviço de leitura de schema de tabelas fisicas;
    • Serviço de leitura de schema de sentença sql;
    • Serviço de retorno de dados;

    Na descrição de cada serviço podemos encontrar os seguintes elementos:

    • Definição da URL do serviço;
    • Parâmetros de request (entrada) e  response (saída);
    • Descrição do serviço com detalhes relativos ao seu funcionamento;


    1. Serviço de leitura de parâmetros gerais;

      GET /api/trep/v1/dbdataproviders/parameters      

      Recebe

      Não recebe parâmetros

      Retorna

      Application/JSON

      Esse método é utilizado para obter os parâmetros do provedor integrado do tipo "banco de dados relacionais". A necessidade e definição desses parâmetros é de responsabilidade do dono do provedor. Os parâmetros retornados por esse serviço aparecerão na grid de parâmetros localizada no "cadastro de provedores de dados" do front-eend do T-Reports. No JSON de retorno, deve constar as seguintes informações:

      • name: Nome do parâmetro;
      • description: Descrição do parâmetro;
      • value: Valor do parâmetro;
      • isPassword: Define se o valor do parâmetro será gravado e mostrado de forma criptografada. Pode ser “true” true ou “false”false

        Informações
        titleExemplo de json de retorno

        {

               “providerParams” : [{

                     “name” : “aliasName”,

                     “description” : “Nome do alias do RM”,

                     “value” : “CorporeRM”,

                     “isPassword” : false,

               }]

        }

       Os parâmetros retornados por esse serviço aparecerão na grid de parâmetros localizada no "cadastro de provedores de dados" do front-end do T-Reports, conforme abaixo:


      Image Added



    2. Serviço de teste de conexão do provedor
      GET /api/trep/v1/dbdataproviders/testconnection      

      Recebe

      Application/JSON

      Retorna

      Application/JSON

      Esse método é utilizado para testar a conexão de um provedor integrado do tipo "dados relacionais". 
      No Json de entrada devem ser enviados os parâmetros recuperados pelo serviço acima "GET /api/trep/v1/dbdataproviders/parameters".

      Informações
      titleExemplo de json de entrada

      {

             “providerParams” : [{

                   “name” : “aliasName”,

                   “description” : “Nome do alias do RM”,

                   “value” : “CorporeRM”,

                   “isPassword” : false,

             }]

      }


       No JSON de retorno, deve constar as seguintes informações:

      • testSucess: Informa se o teste do bem sucedido. Pode ser true ou false

      Esse método é utilizado no click do botão "Teste conexão" localizado no "cadastro de provedores de dados" do front-end do T-Reports, conforme abaixo:

      Image Added