Árvore de páginas

Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 2 Próxima »

01. DADOS GERAIS

Produto:

TOTVS CRM Automação da Força de Vendas

Linha de Produto:

Linha TOTVS CRM

ERPs impactados:Protheus, Datasul e ERPs terceiros
Módulo:Cadastro
Função:Visão 360 Cliente
Ambiente:Web/Android
Ticket:15677137
Requisito/Story/Issue:

DTSFAPD-2515 - Obtendo detalhes do item... STATUS

02. ESCOPO FUNCIONAL

Importar boleto e nota fiscal para geração de 2° via pelo SFA

Na versão atual do TOTVS SFA, não existe a possibilidade de fazer o download do boleto e nota fiscal.

Portanto será disponibilizado botões nas listagens de "Títulos" e "Nota fiscal":



Novo botão em "Listagem de títulos"


Novo botão em "Nota Fiscal"


Deverá ser criado um novo plugin de integração, com descrição "Download de notas fiscais e boletos":


Com essas alterações, será possível fazer o download das notas fiscais e boletos que foram emitidos/gerados pelo Protuues, através da API que será disponibilizada para o SFA.

03. ESCOPO TÉCNICO

APLICAÇÃO

CRIAR PLUGIN

  • Pelo tools opção 5 deverá ser criado o registro:
pluginintegracao {
	codigo: DOWNFBOL,
    descricao: API Para download Danfe e Boleto (PDF),
	idnAtivo: 0
}
Campo "URL Nota Fiscal"
	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNFBOL',
	codigoelemento: DOWNFBOL,
	agrupador: 0,
	sglcampo: DOWNFBOL_URL
	valor: {valor inserido no campo URL}

Campo "URL Boleto"
	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNFBOL',
	codigoelemento: DOWNFBOL,
	agrupador: 0,
	sglcampo: DOWNFBOL_URL
	valor: {valor inserido no campo URL}

Campo "Usuário"
	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNFBOL',
	codigoelemento: DOWNFBOL,
	agrupador: 0,
	sglcampo: DOWNFBOL_USER
	valor: {valor inserido no campo USUÁRIO}

Campo "Senha"
	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNFBOL',
	codigoelemento: DOWNFBOL,
	agrupador: 0,
	sglcampo: DOWNFBOL_PASSWORD
	valor: {valor inserido no campo Senha}

Campo "Timeout Consulta"
	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNFBOL',
	codigoelemento: DOWNFBOL,
	agrupador: 0,
	sglcampo: DOWNFBOL_TIMEOUT
	valor: {valor inserido no campo Timeout consulta}

Campo "Grupo Empresa Padrão"
	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNFBOL',
	codigoelemento: DOWNFBOL,
	agrupador: 0,
	sglcampo: DOWNFBOL_GRUPO
	valor: {valor inserido no campo Grupo Empresa Padrão} 

Campo "Exibir botão de download de notas fiscais"
	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNFBOL',
	codigoelemento: DOWNFBOL,
	agrupador: 0,
	sglcampo: DOWNFBOL_NF_IDNVISIVEL
	valor: {0 ou 1}

Campo "Exibir botão de download de notas fiscais"
	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNFBOL',
	codigoelemento: DOWNFBOL,
	agrupador: 0,
	sglcampo: DOWNFBOL_BOL_IDNVISIVEL
	valor: {0 ou 1}


  • Segue protótipo de tela:

IMPLEMENTAÇÃO NA LISTAGEM DE NOTA FISCAL

  • Na tela, "Venda → Nota Fiscal → Listar", exibir o botão para download do PDF, ao lado do botão de visualização conforme protótipo acima, de acordo com as configurações do plugin:
    • idnAtivo = 1: select idnAtivo from pluginintegracao where codigo = 'DOWNFBOL'
    • valor = 1: select valor from pluginintconfig where codigoelemento = 'DOWNFBOL' AND sglcampo = 'DOWNFBOL_NF_IDNVISIVEL'


  • Ao clicar no botão de download a aplicação deverá consultar a url do carte de acordo com a sql:
URL_PENTAHO
select valor from pluginintconfig where codigoelemento='CONF_GERAL' AND sglcampo='PENTAHO_URL'


    • A url do download deve ser montada da seguinte forma: {URL_PENTAHO}/downloadnf
    • No body da requisição, passar as seguintes informações:
{
empresa:
filial:
numeronotafiscal:
serienotafiscal:
url:
usuario:
senha:
}


  • As informações acima serão obtidas a partir do codigoerp da nota fiscal e do cadastro do plugin:

CODIGOERP: 01#01#000170196#2#2023-12-22T00:00:00

01 → empresa ***

01 → filial

000170196 → documento

2 → serie

*** Quando no cadastro do plugin o campo Grupo Empresa Padrão estiver diferente de NULL, então deve ser usado o valor definido na configuração do plugin; se estiver NULL, usar o grupo obtido no codigoerp da nota fiscal ou boleto 

  • O retorno desta url será o arquivo em base64 para download:


200 - Ok
{
    mensagem: {base64}
}

LISTAGEM DE TÍTULOS

  • Na tela, "Visão 360 → Títulos":  exibir o botão para download do PDF, ao lado do botão de visualização conforme protótipo acima, de acordo com as configurações do plugin:
    • idnAtivo = 1: select idnAtivo from pluginintegracao where codigo = 'DOWNFBOL'
    • valor = 1: select valor from pluginintconfig where codigoelemento = 'DOWNFBOL' AND sglcampo = 'DOWNFBOL_BOL_IDNVISIVEL'


  • Ao clicar no botão de download a aplicação deverá consultar a url do carte de acordo com a sql:
URL_PENTAHO
select valor from pluginintconfig where codigoelemento='CONF_GERAL' AND sglcampo='PENTAHO_URL'
    • A url do download deve ser montada da seguinte forma: {URL_PENTAHO}/downloadtitulo
    • No body da requisição, passar as seguintes informações:
{
empresa:
filial:
numeronotafiscal:
serienotafiscal:
url:
usuario:
senha:
}


INTEGRAÇÃO

API DOWNLOAD NOTA FISCAL

  • Criar para Pentaho-Carte os Job's DOWNLOADNOTAFISCAL no repositório COMMONS_SERVICES;
  • URL de consulta deve ser montada no seguinte padrão:

GET: {URL_API_NOTA_FISCAL_CLIENTE}/{empresa}/{filial}/{documento}/{serie}

HEADERS: Authorization: Basic {TOKEN}

    • O usuário e senha, e a URL serão repassadas pela aplicação no Body da request
  • O retorno recebido será no formato base64, e deve ser retornado para aplicação sem transformações dentro do XML do RESPONSE:
200 - Ok
{
    mensagem: {base64}
}
API - Nota Fiscal

Retornos:

500 - Internal Server Error
{"code":500,"detailedMessage":"","message":"Internal Server Error"}
404 - Nota Fiscal não encontrada
{
    "errorCode": 404,
    "errorMessage": "Nao encontrou a NF 01_05_000001838_11 "
}
200 - Ok
{
    mensagem: {base64}
}


API DOWNLOAD BOLETO


API - TITULOS FINANCEIROS

// Aguardando retorno do responsável pela API



  • Sem rótulos