Ir para conteúdo
  • Cadastre-se

dev botao

Distribuição DFe Status 138 Arquivo com documentos em branco


Ver Solução Respondido por Renato Rubinho,
  • Este tópico foi criado há 641 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Bom dia, estamos implementando a consulta aos documentos fiscais (manifestação do destinatário) em um cliente, onde depois de várias tentativas tendo problemas de consumo indevido por causa do NSU, finalmente conseguimos ter um retorno com documentos encontrados, porém quando estamos lendo o arquivo, as informações dos documentos estão vazias. 

Por exemplo, estamos pegando o valor da chave do documento da seguinte forma:
ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[i].resDFe.chDFe, mas esse campo está vindo vazio. Os demais campos tambem estão vindo  vazios.

Em anexo os arquivos que recebemos nas consultas que vieram dessa forma.

Grato.

20230222090644-dist-dfe.xml 20230222090819-dist-dfe.xml

  • Consultores
  • Solution
Postado

Bom dia,

Os xmls que anexou possuem apenas eventos e resumos de eventos.

A propriedade que você está buscando informações é referente ao resumo da NFe.

Veja um trecho do programa de exemplo, botão de consulta por último nsu, como identificar o schema relacionado ao NSU recebido.

for i := 0 to docZip.Count -1 do
    begin
      case docZip[i].schema of
        schresNFe:
          MemoDados.Lines.Add(IntToStr(i+1) + ' NSU: ' + docZip[i].NSU +
            ' (Resumo Nota) Chave: ' + docZip[i].resDFe.chDFe);

        schprocNFe:
          MemoDados.Lines.Add(IntToStr(i+1) + ' NSU: ' + docZip[i].NSU +
            ' (Nota Completa) Chave: ' + docZip[i].resDFe.chDFe);

        schresEvento:
          MemoDados.Lines.Add(IntToStr(i+1) + ' NSU: ' + docZip[i].NSU +
            ' (Resumo Evento) Chave: ' + docZip[i].resEvento.chDFe);

        schprocEventoNFe:
          MemoDados.Lines.Add(IntToStr(i+1) + ' NSU: ' + docZip[i].NSU +
            ' (Evento Completo) ID: ' + docZip[i].procEvento.Id);
      end;
    end;

 

  • Curtir 2
  • Consultores
Postado

Como um extra ao que o @Renato Rubinho lhe passou.
Por ser usuário PRO, você tem acesso liberado aos cursos do ACBr e dentre esses temos o Implementando o Serviço de Distribuição DFe onde é explicado o conceito e demonstrado na prática como fazer.

  • Curtir 2
Consultor SAC ACBr

Diego Folieni
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Membros Pro
Postado
1 hora atrás, Renato Rubinho disse:

Bom dia,

Os xmls que anexou possuem apenas eventos e resumos de eventos.

A propriedade que você está buscando informações é referente ao resumo da NFe.

Veja um trecho do programa de exemplo, botão de consulta por último nsu, como identificar o schema relacionado ao NSU recebido.

for i := 0 to docZip.Count -1 do
    begin
      case docZip[i].schema of
        schresNFe:
          MemoDados.Lines.Add(IntToStr(i+1) + ' NSU: ' + docZip[i].NSU +
            ' (Resumo Nota) Chave: ' + docZip[i].resDFe.chDFe);

        schprocNFe:
          MemoDados.Lines.Add(IntToStr(i+1) + ' NSU: ' + docZip[i].NSU +
            ' (Nota Completa) Chave: ' + docZip[i].resDFe.chDFe);

        schresEvento:
          MemoDados.Lines.Add(IntToStr(i+1) + ' NSU: ' + docZip[i].NSU +
            ' (Resumo Evento) Chave: ' + docZip[i].resEvento.chDFe);

        schprocEventoNFe:
          MemoDados.Lines.Add(IntToStr(i+1) + ' NSU: ' + docZip[i].NSU +
            ' (Evento Completo) ID: ' + docZip[i].procEvento.Id);
      end;
    end;

 

Entendi, e pra mim poder ir fazendo e testando essa implementação, tem como eu ler esses aquivos sem ter que ficar efetuando a consulta? Pra não ter nenhum problema com consumo indevido. Existe essa possibilidade?

Grato.

1 hora atrás, Diego Foliene disse:

Como um extra ao que o @Renato Rubinho lhe passou.
Por ser usuário PRO, você tem acesso liberado aos cursos do ACBr e dentre esses temos o Implementando o Serviço de Distribuição DFe onde é explicado o conceito e demonstrado na prática como fazer.

Obrigado, vou assistir.

  • Consultores
Postado
57 minutos atrás, cne disse:

testando essa implementação, tem como eu ler esses aquivos sem ter que ficar efetuando a consulta?

No botão de consulta por último NSU, do programa de exemplo, também mostra como ler o arquivo XML.

Ao clicar no botão, abrirá uma Dialog para selecionar um XML de distribuição, ele será alimentado no componente da mesma forma que a consulta faz e você conseguirá fazer as simulações necessárias para suas implementações.

  • Curtir 2
  • Membros Pro
Postado
12 minutos atrás, Renato Rubinho disse:

No botão de consulta por último NSU, do programa de exemplo, também mostra como ler o arquivo XML.

Ao clicar no botão, abrirá uma Dialog para selecionar um XML de distribuição, ele será alimentado no componente da mesma forma que a consulta faz e você conseguirá fazer as simulações necessárias para suas implementações.

Muito obrigado, vou dar andamento. 

Consegui sanar minhas dúvidas. Se quiserem podem fechar o post.

  • Curtir 1
  • Consultores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultor SAC ACBr

Diego Folieni
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Este tópico foi criado há 641 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.