ERP – eDocs NFS-e Recebimento – Como realizar a análise de integração entre eDocs e o Motor Senior para validação do monitoramento de municípios
Dúvida
Como realizar a análise de integração entre eDocs e o Motor Senior para validação do monitoramento de municípios?
Solução
Importante
- Necessário conhecimento na coleta e análise de logs. Verifique o artigo eDocs – Como coletar logs de texto (Sde.Log, Monitor.Log, PrintService.log);
- Necessário conhecimento no fluxo de comunicação entre o eDocs e o Motor Senior. Para mais informações consulte o artigo ERP – eDocs NFS-e Recebimento – Onde encontrar informações sobre o recebimento de NFS-e (índice).
Atenção
Para que a análise de casos retroativos possa ser feita, é obrigatório que o parâmetro Habilitar coleta de XML esteja ativo no dia a ser analisado, ele é encontrado em Configurações / Gerais / aba Log.
Se o parâmetro não estava ativo, será necessário ativá-lo e aguardar o horário da próxima consulta.
1. Identificando a última data da consulta;
1.1. Execute o comando abaixo:
SELECT *
FROM N100NSU
WHERE TIPDOC = 2
1.2. Salve a informação de data e horário da coluna DATCON referente a filial em análise;
2. Buscando os logs de comunicação no Sde.log;
2.1. Abra o Sde.log na data e horário apresentados na coluna DATCON salva;
2.2. Busque pelo log de envio;
Observação
Pode ser buscado pela tag <DataInclusaoInicial> para facilitar o processo.
Exemplo de consulta:
<?xml version="1.0" encoding="utf-8"?>
<InvoiCy xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<Cabecalho xmlns="InvoiCy">
<EmpPK>S0NsBN0HkOZfpGtGsNdXQw==</EmpPK>
<EmpCK>0000c0b000ea000df00d0c000d00000b</EmpCK>
</Cabecalho>
<Dados xmlns="InvoiCy">
<DadosItem>
<Documento>
<EnvioLote>
<ModeloDocumento>NFSe</ModeloDocumento>
<tpAmb>2</tpAmb>
<CnpjEmpresa>00000000000000</CnpjEmpresa>
<DataInclusaoInicial>2023-08-05T16:23:24</DataInclusaoInicial>
<DataInclusaoFinal>2023-09-04T16:23:24</DataInclusaoFinal>
<EmitidoRecebido>R</EmitidoRecebido>
</EnvioLote>
</Documento>
<Parametros>
<ParametrosConsulta>
<XMLCompleto>S</XMLCompleto>
<PDFBase64>S</PDFBase64>
</ParametrosConsulta>
</Parametros>
</DadosItem>
</Dados>
</InvoiCy>
Importante
Salve a thread que realizou o envio, dessa forma é possível encontrar facilmente o protocolo. A thread poderá ser vista entre colchetes logo no início do registro do log, após os milésimos da hora, por exemplo 2023-09-04 16:23:24,964 [237], onde o 237 é o número da thread.
2.3. Copie o protocolo retornado na tag <ProtNumero>. Por padrão essa informação estará logo no próximo registro de log, com alguns poucos milésimo de diferença e obrigatoriamente estará na mesma thread pois é uma comunicação síncrona.
Exemplo de retorno:
<?xml version="1.0" encoding="utf-8"?>
<Invoicyretorno xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<Mensagem xmlns="InvoiCy">
<MensagemItem>
<Codigo>100</Codigo>
<Descricao>Lote agendado com sucesso. Realize a consulta dos protocolos posteriormente</Descricao>
<Documentos>
<DocumentosItem>
<Documento>
<Protocolo>
<ProtNumero>2023090416232530000000</ProtNumero>
<ProxConsultaProtocolo>2023-09-04T16:33:25</ProxConsultaProtocolo>
</Protocolo>
</Documento>
</DocumentosItem>
</Documentos>
</MensagemItem>
</Mensagem>
</Invoicyretorno>
2.4. Busque pelo protocolo até que encontre o retorno de Protocolo processado;
Exemplo:
<?xml version="1.0" encoding="utf-8"?>
<Invoicyretorno xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<Mensagem xmlns="InvoiCy">
<MensagemItem>
<Codigo>100</Codigo>
<Descricao>Protocolo processado</Descricao>
<Documentos>
<DocumentosItem>
<Documento>
<ConsultaProtocolo>
<ProxProtocolo/>
<ProxConsultaProtocolo p2:nil="true" xmlns:p2="http://www.w3.org/2001/XMLSchema-instance"/>
<DocBase64>UEsDB...64BAAAA</DocBase64>
</ConsultaProtocolo>
</Documento>
</DocumentosItem>
</Documentos>
</MensagemItem>
</Mensagem>
</Invoicyretorno>
3. Analisando retorno do protocolo;
3.1. Sendo apresentada a descrição Protocolo processado, logo abaixo estará a tag <DocBase64> contendo os documentos em formato base64;
Exemplo:
<?xml version="1.0" encoding="utf-8"?>
<Invoicyretorno xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<Mensagem xmlns="InvoiCy">
<MensagemItem>
<Codigo>100</Codigo>
<Descricao>Protocolo processado</Descricao>
<Documentos>
<DocumentosItem>
<Documento>
<ConsultaProtocolo>
<ProxProtocolo/>
<ProxConsultaProtocolo p2:nil="true" xmlns:p2="http://www.w3.org/2001/XMLSchema-instance"/>
<DocBase64>UEsDB...64BAAAA</DocBase64>
</ConsultaProtocolo>
</Documento>
</DocumentosItem>
</Documentos>
</MensagemItem>
</Mensagem>
</Invoicyretorno>
Observação
Dando sequência na thread, poderão ser vistos os documentos convertidos do formato base64 para o leiaute padrão.
3.2. Sendo apresentada a descrição Nenhum documento localizado na base de dados, é o indicativo que todas das NFS-es foram consultadas e não há nenhuma nova a ser retornada.
Observação
- Para mais informações sobre o processo de recebimento de NFS-e, consulte o artigo ERP – eDocs NFS-e Recebimento – Onde encontrar informações sobre o recebimento de NFS-e (índice).