Última modificação em: 17/10/2022

Importação de Leiautes Através do nWeb

O nWeb utiliza comunicação via protocolo HTTP/HTTPS, com utilização de JSON em base 64 ou String Json. Sendo assim para que a comunicação do seu ERP com o Gestão Contábil seja efetuada de forma automática, deverá ser disponibilizada através do seu ERP a integração dentro dos padrões desse formato de comunicação.

Para que a integração entre as aplicações funcione de forma correta, será necessário que a internet da rede do servidor de aplicação que está rodando o nWeb, possua um IP fixo, disponibilizado pela operadora de internet. Além disso, deve ser liberada e direcionada uma porta de acesso, com liberações no NAT e nas definições de rede como proxy ou firewall. Dessa forma, a comunicação entre aplicação externa para a o Questor Tributário irá funcionar utilizando o IP + Porta.

Por exemplo: um servidor que possua o IP 177.75.152.36 e a porta que foi liberada para conexão é a 8080. Assim, para efetuar o envio de informações será utilizado da seguinte forma: http://177.75.152.36:8080.

A seguir, vamos efetuar uma simulação de integração entre uma ferramenta externa com o nWeb, para isso utilizaremos o PostMan, que simulará a integração entre o ERP e o Questor.

O download pode ser realizado no link abaixo: https://www.getpostman.com

Seguem abaixo os passos para configurar o PostMan:

1. Ao abrir o PostMan irá abrir a seguinte tela

2. Crie uma Nova Aba no PostMan

3. Selecione o método POST

4. Dentro do campo de URL, insira a URL Externa, para conexão com o nWeb (por exemplo a que criamos nos primeiros tópicos: http://177.75.152.36:8080.) mais o caminho para fazer a importação dentro do Questor Tributário. Por Exemplo: http://177.75.152.36:8080/integracao/importar

Como neste artigo estamos apenas demonstrando uma simulação, vamos efetuar a importação como localhost, pois vamos fazer a integração direto na mesma máquina:

5. Clique na opção Body e em seguida em RAW

 

Na sequência insira os seguintes parâmetros:

{

"leiautes":[{"nome":"NOMEARQUIVO.nli","arquivo":"LAYOUT-BASE64 ou STRING JSON"}],

"filtro":"",

"dados":"DADOSIMPORTAÇÃO-BASE64 ou STRING JSON",

"podealterardados":false,

"executarvalidacaofinal":false

}

Esse é o JSON padrão, ele sempre será utilizado para fazer a importação dos dados. Esse JSON é composto por:

  1. Leiautes (nome e arquivo):
    1. Nome: Nome do layout que está utilizando para fazer a importação.
    2. Arquivo: Será o conteúdo do layout já convertido para base64 ou String JSon

  2. Filtro: Utilizado para realizar um filtro durante a importação ou exportação de dados, por exemplo: "CodigoEmpresa;CodigoEstab;DatalctoFis= (5;1;01/01/1900)..(5;1;31/12/1900)", neste caso, irá pegar apenas os dados da empresa 5, filial 1 e movimento entre 01/01/1900 e 31/12/1900.

  3. Dados: Esse é o campo que será colocado o arquivo que contém os dados de importação, da mesma forma como o layout, seu conteúdo deve ser convertido para base64 ou String JSon.

  4. PodeAterarDados: Opções: False/True, True = Realiza alterações de registros no banco de dados, para isso deverá ter a ID dos registros de acordo com existente no Gestão Contábil, False = Incluirá novos registros.

  5. ExecutarValidacaoFinal: É uma opção que quando informada com “Sim” realiza validações no conjunto dos dados que estão sendo importados. Exemplo: Na importação de lançamentos contábeis validas, se existem diferenças de débito/crédito no arquivo. Quando houver diferenças não importam os dados, desde que o parâmetro “Permitir Erros” esteja como “Não”.

6. Após a elaboração do JSon, o mesmo ficará da seguinte forma quando completo.

Exemplo Base64:

{

"leiautes":[{"nome":"NOMEARQUIVO.nli", "arquivo":"b2JqZWN0IFRuSXRlbUltcG9ydGFjYW8KICBEZWxpbWl0YWRvciA9IC..."}],

"filtro":"CodigoEmpresa;CodigoEstab=(5;1)",

"dados":"GQKICAgIEZpZWxkTmFtZSA9ICdDT...",

"podealterardados":false,

"executarvalidacaofinal":false

}

 

Exemplo String Json:

{

"leiautes":[{"nome":"Banco.nli","arquivo":"object TnItemImportacao\r\n Delimitador = #0\r\n DMClassName = 'TnGemDMBanco'\r\n ..."}],

"filtro":"",

"dados":";260;bancoTeste;Banco teste Completo;1;www.bancoTeste.com;0,00\r\n",

"podealterardados":false,

"executarvalidacaofinal":false

}

 

Com o JSon criado, vamos ao PostMan e o colamos dentro da aba que foi criada:

Para executar a importação dos Dados clique em “Send”.

Caso retorne a mensagem 'Could not get any response', então deve-se efetuar revisão das configurações do NAT, e conferir se o nWeb está corretamente inicializado.

Erro 500 = Erro de integridade do comando executado. Este erro pode ocorrer caso algum parâmetro tenha sido inserido de forma incorreta no JSON.

Após a execução com sucesso, é dado retorno com a quantidade de registros alterados/inseridos, acompanhado dos IDs das chaves primárias dos registros integrados.

Para a Exportação de Dados do Gestão Contábil basta seguir os mesmos passos anteriores, porém, a URL será conforme exemplo: http://177.75.152.36:8080/integracao/exportar, e os parâmetros serão:

{

"leiautes":[{"nome":"NOMEARQUIVO.nli","arquivo":"LAYOUT-BASE64 ou STRING JSON"}],

"filtro":"",

"podealterardados":false,

"executarvalidacaofinal":false

}

CCQ Blog
© Questor Sistemas 2025