Membros Pro syspan Posted September 11 Membros Pro Share Posted September 11 Boa tarde, Uso a DistribuicaoDFE para baixar as notas, esta funcionando blz, mas surgiu a seguinte duvida, se uma nota baixada sofre alguma alteração na sefaz, por exemplo, foi cancelada, ela entra novamente na fila da distribuição? Exemplo: Dia 01/09 as 10:00h baixei a nota 1 do Fornecedor A, quando foi as 15:00h o fornecedor cancelou a nota. Ela retorna na fila para avisar que foi cancelada? Att João Victor Link to comment Share on other sites More sharing options...
Membros Pro lucimauro Posted September 11 Membros Pro Share Posted September 11 Ola, Esse cancelamento feito pelo fornecedor você recebera o evento e então é só fazer a referencia pela chave da nota que constara no evento com a nota que você já baixou para atualizar o status de cancelada casa seja um evento de cancelamento. Link to comment Share on other sites More sharing options...
Consultores Solution Italo Giurizzato Junior Posted September 12 Consultores Solution Share Posted September 12 Bom dia @syspan, Complementando o que o @lucimauro lhe passou, o XML da nota nunca vai ser alterado após ela ter sido autorizada pela SEFAZ. Caso ela venha a ser cancelada pelo emitente ou ele faça uma carta de correção pois a nota tem uma informação errada, isso chamamos de eventos. Todos os eventos possuem a chave da nota, uma vez que o evento sempre tem que estar vinculado ao documento. O DistribuicaoDFe pode retornar o resumo da nota, a nota completa, o resumo do evento ou o evento completo. Cabe a sua aplicação analisar cada documento retornado pelo DistribuicaoDFe para saber qual dos 4 tipos de retornos mostrados acima e tomar uma decisão. Por exemplo: Se retornou o resumo da nota a aplicação tem que colocar a chave da nota em uma lista de notas a serem manifestadas pelo destinatário. Se o retornou a nota completa salvar o XML em disco ou no banco de dados para depois ler as suas informações para alimentar o controle de estoque e o contas a pagar. Se o retornou for o evento completo, checar que tipo de evento é, caso seja de cancelamento marcar no banco de dados que a nota foi cancelada, evitando assim que a nota seja paga e estornar o estoque. Espero ter ajudado. 1 Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / Araraquara-SP Araraquara - A era dos Trólebus Link to comment Share on other sites More sharing options...
Membros Pro syspan Posted September 25 Author Membros Pro Share Posted September 25 Boa tarde @Italo Giurizzato Junior, obrigado pelo retorno, só para confirmar, é assim que devo verificar? if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[i].schema = schprocEventoNFe then begin case ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[i].resEvento.tpEvento of teCancelamento : begin end; end; Att João Victor Link to comment Share on other sites More sharing options...
Consultores Italo Giurizzato Junior Posted September 25 Consultores Share Posted September 25 Boa tarde @syspan, Sim, é dessa forma. Italo Giurizzato Junior Ajude o Projeto ACBr crescer - Assine o SAC Analista de Sistemas / Araraquara-SP Araraquara - A era dos Trólebus Link to comment Share on other sites More sharing options...
Recommended Posts