Á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 7 Próxima »

DADOS GERAIS SOBRE OS RECURSOS

Este Plugin possibilita o Downlod de Notas Fiscais dentro dos módulos de Vendas e Cliente.

Esse plugin permite que seja configurada conexão com uma API que requisita no ERP ou outro local definido pelo cliente, o arquivo PDF referente a Nota fiscal que se deseja baixar, e faz com que esse arquivo PDF seja baixado localmente no computador ou smartphone do usuário.

É importante ressaltar que não fornecemos a api que obtém o arquivo do ERP e disponibiliza para o SFA. É necessário que haja do lado do cliente, uma API à qual nosso plugin irá se conectar e fazer a requisição de download, por essa razão, é preciso também que e essa API esteja adequada ao modelo de REQUEST e RESPONSE esperado pelo SFA para obter o arquivo PDF.

Dessa forma, quando o Plugin estiver ativo e as configurações realizadas corretamente, pela tela de Títulos na WEB ou no aplicativo, é possível baixar o arquivo PDF referente ao registro selecionado.

    ESCOPO FUNCIONAL/MANUAL

    Configuração do Recurso

    Este Plugin tem como objetivo fazer a comunicação com o ERP correspondente e permitindo que o usuário visualize e baixe um PDF do documento DANFE direto pela aplicação TOTVS CRM SFA.

    Para configurar é necessário ativar o Card referente a esse fluxo em: Configuração > Integração > Plugins de Integração

    Após ativar, clique em "Configurar' no Card correspondente e serpa exibido os seguintes campos:

    Campo Descrição
    URL

    Informe a URL em que a API para download estará sendo servida (Ex: https://IP:PORTA/rest/KFATRO03)

    Usuário Informe o Usuário da autenticação básica
    Senha Informe a senha da autenticação básica
    Job Informe o nome do serviço Pentaho que faz a comunicação com a URL fornecida
    Rep Informe o repositório onde está o Job dentro do arquivo .jar da integração
    Timeout Informe de processamento para aguardar retorno da API

    Detalhes do Fluxo de Download de NF's

    Com a configuração realizada, acesse o módulo Venda > Notas Fiscais > Listar

    Nessa tela são exibido todos os registros de Notas fiscais que foram importadas do ERP, porém agora exibe uma coluna com o Ícone de Download:

    Ao clicar no Ícone do registro que pretende consultar, a aplicação exibe a janela de comunicação com o Carte e a consulta da DANFE é realizada.

    Após a consulta, o Download da Nota Fiscal é automaticamente realizado.

    ESCOPO TÉCNICO

    API NOTA FISCAL

    Plugin

    • Pelo tools opção 5 é criado o seguinte registro:


    pluginintegracao {
    	codigo: DOWNNF,
        descricao: API Para download Danfe (PDF),
    	idnAtivo: 0
    }
    Campo "URL Nota Fiscal"
    	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNNF',
    	codigoelemento: DOWNNF,
    	agrupador: 0,
    	sglcampo: DOWNNF_URL
    	valor: {valor inserido no campo URL}
    Campo "Usuário"
    	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNNF',
    	codigoelemento: DOWNNF,
    	agrupador: 0,
    	sglcampo: DOWNNF_USER
    	valor: {valor inserido no campo USUÁRIO}
    
    Campo "Senha"
    	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNNF',
    	codigoelemento: DOWNNF,
    	agrupador: 0,
    	sglcampo: DOWNNF_PASSWORD
    	valor: {valor inserido no campo Senha}
    
    Campo "Timeout Consulta"
    	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNNF',
    	codigoelemento: DOWNNF,
    	agrupador: 0,
    	sglcampo: DOWNNF_TIMEOUT
    	valor: {valor inserido no campo Timeout consulta}
    Campo "Rep"
    	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNNF',
    	codigoelemento: DOWNNF,
    	agrupador: 0,
    	sglcampo: DOWNNF_REP
    	valor: {COMMONS_SERVICES}
    Campo "Job"
    	idpluginintegracao: select idpluginintegracao from pluginintegracao where codigo = 'DOWNNF',
    	codigoelemento: DOWNNF,
    	agrupador: 0,
    	sglcampo: DOWNNF_JOB
    	valor: {DOWNLOADNOTAFISCAL}


    • Segue Dados de tela que serão preenchidos:

    Implementação na listagem de nota fiscal

    • Na tela, "Venda → Nota Fiscal → Listar", exibe o botão para download do PDF, ao lado do botão de visualização conforme protótipo, de acordo com as configurações do plugin:
      • idnAtivo = 1: select idnAtivo from pluginintegracao where codigo = 'DOWNNF'
    • Ao clicar no botão de download a aplicação deverá consultar o carte de acordo com a sql:

    URL_PENTAHO
    select valor from pluginintconfig where codigoelemento='CONF_GERAL' AND sglcampo='PENTAHO_URL'
      • A url do download é montada da seguinte forma: URL=${Configurações do Pentaho.URL}/kettle/executeJob/?rep={}&job={}

      • No body da requisição, passar as seguintes informações:
    {
    	idnotafiscal:
    }


    • O retorno desta url será o arquivo em base64 para download:
    200 - Ok
    {
        mensagem: {base64}
    }

    Integração com API Download de Notas fiscais

    • Lista de variáveis integração abaixo:

      ERP

      TODOS

      CONTEXTO

      API

      DESCRIÇÃO

      Se valor 1, a URL será no formato {URL_API_NOTA_FISCAL_CLIENTE}/{empresa}/{filial}/{documento}/{serie}; se a variável estiver inativa, então a URL montada será no formato {URL_API_NOTA_FISCAL_CLIENTE}/{filial}/{documento}/{serie}.

      TABELA

      WSCONFIGINTEGRACAO

      CAMPO

      VALOR

      VALOR

      1

      IDNATIVO

      1

      CODIGOERP

      API_DOWNNF

    • Criado para Pentaho-Carte o Job DOWNLOADNOTAFISCAL no repositório COMMONS_SERVICES;

    • URL de consulta é montada no seguinte padrão:

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

    HEADERS: Authorization: Basic {TOKEN}

      • Informações da request serão obtidas a partir das consultas abaixo;

      • Se o campo EMPRESA estiver como NULL, então o parâmetro EMPRESA não é repassado na URL da request. Dessa forma {URL_API_NOTA_FISCAL_CLIENTE}/{filial}/{documento}/{serie}:
    SELECT n.numeronotafiscal AS DOCUMENTO,
           n.serie            AS SERIE,
           l.numeromatricula  AS FILIAL,
           CASE
             WHEN Cast(w.valor AS VARCHAR) = '1' THEN
             Split_part(n.codigoerp, '#', 1)
             ELSE NULL END    AS EMPRESA
    FROM   notafiscal n
           INNER JOIN local l
                   ON l.idlocal = n.idlocalfilialfaturamento
           LEFT JOIN wsconfigintegracao w
                  ON w.codigoerp = 'API_DOWNNF'
                     AND w.idnativo = 1
    WHERE  n.idnotafiscal = :IDNOTAFISCAL;
    
    
    SELECT ( CASE
               WHEN sglcampo = 'DOWNNF_PASSWORD' THEN valor
             END ) AS SENHA,
           ( CASE
               WHEN sglcampo = 'DOWNNF_USER' THEN valor
             END ) AS USUARIO,
           ( CASE
               WHEN sglcampo = 'DOWNNF_URL' THEN valor
             END ) AS URL
    FROM   pluginintconfig
    WHERE  codigoelemento = 'DOWNNF'
           AND sglcampo IN ( 'DOWNNF_PASSWORD', 'DOWNNF_USER', 'DOWNNF_URL' ); 


    • O retorno recebido será no formato base64, e é 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}
    }





    • Sem rótulos