Jump to content

Embarcadero Conference 2019

22/10 - Visite o Stand do ACBr
Saiba mais

Nova Loja Oficial
loja.projetoacbr.com.br
Ajude o projeto a crescer, com estilo

Comprar

Balança SM100 performance surpreendente

Tecnologia Japonesa   Teclado e Visor resistentes a água
Consumo inteligente de etiquetas   Baixo custo de manutenção
Comunicação Ethernet e WIFI independentes

Saiba mais

Impressora de Etiquetas ELGIN - L42 PRO

Protocolos PPLA, PPLB, ZPL, EPL (automático)
Porta USB padrão Opcionais: Ethernet, Serial, Paralela
Sensor de Etiquetas Móvel Garantia de 18 meses

Saiba mais

murilo cosme da silva

ANSWERED Distribuição DFE

Recommended Posts

Boa tarde,

 

gostaria de saber se tem como pegar data de emissão de uma nfe quando estou lendo o retorna da consulta.

a tag "DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.dhEmi", eu achava que era data e hora da nota mais

é do ultimo evento de um processo da nota, estava querendo saber como achar a data e hora para comparar ao 

banco de dados de notas lançadas e mostrar ao cliente as notas pendentes de lançamento de um determinado período

para ver se não vai ter alguma notas que possivelmente não foi lançada e verificar para não cair em malha fina, já

que consigo retorna todas as notas que foram emitidas contra o cliente.

 

 

Share this post


Link to post
Share on other sites

Bom dia Murilo,

Ao utilizar o método DistribuicaoDFe temos vários tipos de retornos, tais como: resNFe, resEvento, nfeProc e procEventoNFe.

Em resNFe temos apenas um resumo da nota e neste resumo temos a data e hora de emissão da nota e para obter essa informação basta ler a propriedade dhEmi da seguinte forma:

dhEmissaoNFe :=  DistribuicaoDFe.retDistDFeInt.docZip.Items[ X ].resNFe.dhEmi;

Em resEvento temos apenas um resumo do evento e neste resumo temos a data e hora de emissão do evento e para obter essa informação basta ler a propriedade dhEvento da seguinte forma:

dhEmissaoEvemto :=  DistribuicaoDFe.retDistDFeInt.docZip.Items[ X ].resEvento.dhEvento;

Em nfeProc temos a nota completa inclusive com a assinatura e protocolo de autorização e para obter a data e hora de emissão basta ler a propriedade dhEmi da seguinte forma:

dhEmissaoNFe :=  DistribuicaoDFe.retDistDFeInt.docZip.Items[ X ].resNFe.dhEmi;

Em procEventoNFe temos o evento completo, ou seja, a solicitação e o retorno da SEFAZ acusando que o mesmo foi registrado e vinculado a nota e para obter a data e hora de emissão do evento basta ler a propriedade dhEvento da seguinte forma:

dhEmissaoEvemto :=  DistribuicaoDFe.retDistDFeInt.docZip.Items[ X ].procEvento.dhEvento;

 

Dica: abra o fonte pcnRetDistDFeInt.pas para saber quais são as informações disponíveis em cada tipo de retorno.


Consultor SAC ACBr Italo Jurisato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Share this post


Link to post
Share on other sites

Ítalo, primeiramente bom dia e obrigado por responder.

estou usando esta tag, mais tenho uma nota que é de novembro e aparece no dhEmit o dia da confirmação da nfe pelo

cliente ex: 

dlg_manifestacaoDestinatario.ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resNFe.dhEmi);

Autorização de Uso
126150070122672 27/11/2015 às 05:06:24-03:00 27/11/2015 às 09:00:39 Confirmação da Operação pelo Destinatário (Órgão Autor: AN) 891150883008272 04/12/2015 às 10:47:18-02:00 04/12/2015 às 10:47:18

tem como eu só salvar as nfe e ignorar as outras situações ou salvar em outro lugar os CTE, confirmação de operação ou outras situações, gostaria de pegar só as nfe emitidas contra o cliente e a real data de emissão. 
       

 

Share this post


Link to post
Share on other sites

Bom dia Murilo,

O componente esta configurado para salvar?

Configuracoes.Arquivos.Salvar := True;

Se sim, é para salvar um arquivo chamado: <chave>-resNFe.xml este arquivo contem o resumo da nota que foi emitida contra o CNPJ do destinatário.

Favor verificar se a data de emissão que consta nesse arquivo realmente é a data de emissão da nota.

Ao obter o retorno do DistribuicaoDFe você pode ler a propriedade Schema, esta vai conter os seguintes valores: schresNFe, schresEvento, schprocNFe e schprocEventoNFe

Se você deseja somente os resumos e as notas você pode filtrar por schresNFe e schprocNFe através de um IF ou CASE.

  • Like 1

Consultor SAC ACBr Italo Jurisato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Share this post


Link to post
Share on other sites

Bom dia,

Para que você não fique batendo cabeça, lhe convido a ler a Nota Técnica 2014/002 versão 1.01

Na página 5 você vai encontrar o layout do XML retornado, desta forma você vai saber quais são as informações que são retornadas após executar o método DistribuicaoDFe.

Vai descobrir por exemplo que o campo indCont não existe nesse método.

  • Like 1

Consultor SAC ACBr Italo Jurisato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Share this post


Link to post
Share on other sites

Com relação aos eventos de uma determinada nota, caso uma nota tenha mais de um evento como isso é retornado pelo ACBr?

Vi que ele tem uma propriedade resEvento, porem que retorna apenas 1 evento.

Share this post


Link to post
Share on other sites

Ok, mas como funciona, este resEvento vem junto com a consulta das notas, correto? 

Pelo que entendi nao existe uma collection item para os eventos, ou estou enganado? por nao vi como fazer um loop para todos os eventos de uma determinada data

Share this post


Link to post
Share on other sites

Estou perguntando porque em teste aqui, vi o seguinte.

Faturo uma nota contra o meu CNPJ, executo o Distribuicao e ele me retorna esta Nota, depois fiz uma carta de correcao e nao mais tenho retorno 138 sempre 137, e assim nao tenho acesso mais aos eventos desta nota. Como eu faria para acessar eventos de uma nota, teria que realizar outra consulta que nao a distribuicaoDFe?

Share this post


Link to post
Share on other sites
15 horas atrás, vipeol disse:

Estou perguntando porque em teste aqui, vi o seguinte.

Faturo uma nota contra o meu CNPJ, executo o Distribuicao e ele me retorna esta Nota, depois fiz uma carta de correcao e nao mais tenho retorno 138 sempre 137, e assim nao tenho acesso mais aos eventos desta nota. Como eu faria para acessar eventos de uma nota, teria que realizar outra consulta que nao a distribuicaoDFe?

Conforme a Nota Técnica 2014/002, pág. 4:

  1. Os documentos fiscais e resumos de eventos estarão disponíveis somente se o destinatário se manifestar dando
    "Ciência da Operação", “Operação não Realizada” ou "Confirmação de Operação" para a NF-e. Antes da manifestação do
    destinatário fica disponível unicamente a estrutura XML de “Resumo de NF-e”.

Share this post


Link to post
Share on other sites

Pessoal bom dia!

Estou precisando da ajuda para resolver esta questao dos eventos, como citado acima tenho tentado fazendo a consulta a distribuicao que se o evento for efetuado após a ultima consulta em uma nota de um NSU passado ele não vem, então fiz uma consulta a um NSU especifico assim o evento veio porem acho que da forma incorreta segue anexo veio apenas o tipo de evento CCe e mais nada

watchlist.png

Share this post


Link to post
Share on other sites

Boa tarde!

    Conforme informaram e esta na nota tecnica, que só estaria disponivel os eventos após ciencia da operação.

-    Fiz a ciencia da operação para uma determinada nota

-    o MaxNSU foi alterado, estava em 16 e passou para 18, porem mesmo assim não aparece o evendo, então estou entendendo que estou pegando errado os eventos, será que alguem poderia me dar uma Luz de como fazer para pegar os eventos de uma nota?

-  ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.resEvento.chNFe <> '' 

se for o caso posto o fonte que estou usando, peguei este fonte dentro de um exemplo que tinha no ACBr

    

Edited by vipeol

Share this post


Link to post
Share on other sites

Boa tarde,

Qual é o tipo de evento que desejas?

Outra coisa esses eventos se referem as notas destinadas a você ou se referem as notas emitidas por você?


Consultor SAC ACBr Italo Jurisato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Share this post


Link to post
Share on other sites

Segundo a NT 2014/002 versão 1.01 página 4 o Destinatário só terá os documentos fiscais e resumos de eventos disponíveis o mesmo efetuar a manifestação dando "Ciência da Operação", "Operação não Realizada" ou "Confirmação de Operação", caso contrario somente o resumo da NF-e.

Mas veja a Tabela que esta na página 4 da referida NT, no que diz respeito a CC-e o que o destinatário recebe não é um resumo do evento e sim o evento completo.

Sendo assim:

ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[ x ].procEvento.<campo desejado>


Consultor SAC ACBr Italo Jurisato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Share this post


Link to post
Share on other sites

Uma coisa que náo estou entendendo e se puderem me ajudar, (Já li a nota técnica e não consegui sanar a dúvida) é sobre as consultas quando a nota diz

"A empresa deverá aguardar um tempo mínimo de 1 hora para efetuar uma nova solicitação de distribuição, caso receba a indicação que não existem mais documentos a serem pesquisados na base de dados da SEFAZ (indCont=0)."

Onde ao mesmo tempo tem a informação de maxNSU e o indCont eu não achei no ACBr, então fiquei na dúvida de como controlar a continuidade da pesquisa caso tenha mais de 50 notas destinadas ao meu cnpj, como estao fazendo para controlar isto?

 

Share this post


Link to post
Share on other sites

Boa noite,

É lógico que você esta confuso, lendo a Nota Técnica que trata sobre o ConsultaNFeDest e usando o DistribuicaoDFe

Você tem que ler a NT 2014/002 versão 1.01 que trata sobre o Web Service Distribuição DF-e.


Consultor SAC ACBr Italo Jurisato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...