Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 2484 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Estou utilizando as consultas da manifestação do destinatário utilizando o 'DistribuicaoDFe', pois nos outros posts vi que a 'ConsultaNFeDest' será cancelada.
Porém preciso pegar o retorno da manifestação 'Sem manifestação, Confirmada, Desconhecida, etc.. '. Como faço essa consulta? Existe algum outro componente? Como devo proceder?

Grata!

  • Moderadores
Postado
1 hora atrás, Talita BM disse:

Estou utilizando as consultas da manifestação do destinatário utilizando o 'DistribuicaoDFe', pois nos outros posts vi que a 'ConsultaNFeDest' será cancelada.
Porém preciso pegar o retorno da manifestação 'Sem manifestação, Confirmada, Desconhecida, etc.. '. Como faço essa consulta? Existe algum outro componente? Como devo proceder?

Grata!

Bom dia,

A princípio, não tem como.

Os eventos de manifestação do destinatário são retornados para o emitente da nota pelo DistribuicaoDFe, mas não há como consultar se houve manifestação própria para uma nota.

Se foi manifestado por outro software por exemplo.

Dito isso, o aplicativo gratuito de manifestação do destinatário consegue obter essa informação, ainda não descobri como.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Postado
5 horas atrás, BigWings disse:

Bom dia,

A princípio, não tem como.

Os eventos de manifestação do destinatário são retornados para o emitente da nota pelo DistribuicaoDFe, mas não há como consultar se houve manifestação própria para uma nota.

Se foi manifestado por outro software por exemplo.

Dito isso, o aplicativo gratuito de manifestação do destinatário consegue obter essa informação, ainda não descobri como.

Puxa vida.. 

Realmente no emissor exibe o status da manifestação, deve haver um jeito.. 

  • 1 mês depois ...
Postado (editado)

Não sei se é o jeito correto, mas por enquanto estou pegando o status da seguinte forma:

Realizo a DistribuicaoDFe e mostro as notas em um grid. Nesse momento, caso não conste manifestação pelo meu sistema, chamo um método que consulta os eventos NFe e retorna a última manifestação. Ex:

function ConsultaSitManifesto(pChave: String): String;
var i: Integer;
begin
  ACBrNFe1.WebServices.Consulta.procEventoNFe.Clear;
  ACBrNFe1.WebServices.Consulta.NFeChave := pChave;
  ACBrNFe1.WebServices.Consulta.Executar;

  cdsEventos.EmptyDataSet;

    for i := 0 to ACBrNFe1.WebServices.Consulta.procEventoNFe.Count -1 do
      if ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[i].RetEventoNFe.retEvento.Items[0].RetInfEvento.tpEvento in
        [teManifDestConfirmacao, teManifDestCiencia, teManifDestDesconhecimento, teManifDestOperNaoRealizada] then
      begin
        cdsEventos.Append;
        cdsEventosDataHora.AsDateTime := ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[i].RetEventoNFe.retEvento.Items[0].RetInfEvento.dhRegEvento;
        cdsEventosDescricao.AsString  := TpEventoToStr(ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[i].RetEventoNFe.retEvento.Items[0].RetInfEvento.tpEvento);
        cdsEventos.Post;
      end;

  cdsEventos.Last;  //IndexFieldNames := 'DatHora';

  Result := cdsEventosDescricao.AsString;
end;

onde cdsEventos é um ClientDataSet em memória, ordenado por Data/Hora (porque os eventos podem vir fora de ordem),

Bom, é isso. Se alguém está fazendo de alguma outra forma, favor compartilhar :-)

Editado por Reinaldo Silveira
  • Curtir 1
  • 9 meses depois ...
Postado
Em 10/04/2017 at 13:25, Reinaldo Silveira disse:

Não sei se é o jeito correto, mas por enquanto estou pegando o status da seguinte forma:

Realizo a DistribuicaoDFe e mostro as notas em um grid. Nesse momento, caso não conste manifestação pelo meu sistema, chamo um método que consulta os eventos NFe e retorna a última manifestação. Ex:


function ConsultaSitManifesto(pChave: String): String;
var i: Integer;
begin
  ACBrNFe1.WebServices.Consulta.procEventoNFe.Clear;
  ACBrNFe1.WebServices.Consulta.NFeChave := pChave;
  ACBrNFe1.WebServices.Consulta.Executar;

  cdsEventos.EmptyDataSet;

    for i := 0 to ACBrNFe1.WebServices.Consulta.procEventoNFe.Count -1 do
      if ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[i].RetEventoNFe.retEvento.Items[0].RetInfEvento.tpEvento in
        [teManifDestConfirmacao, teManifDestCiencia, teManifDestDesconhecimento, teManifDestOperNaoRealizada] then
      begin
        cdsEventos.Append;
        cdsEventosDataHora.AsDateTime := ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[i].RetEventoNFe.retEvento.Items[0].RetInfEvento.dhRegEvento;
        cdsEventosDescricao.AsString  := TpEventoToStr(ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[i].RetEventoNFe.retEvento.Items[0].RetInfEvento.tpEvento);
        cdsEventos.Post;
      end;

  cdsEventos.Last;  //IndexFieldNames := 'DatHora';

  Result := cdsEventosDescricao.AsString;
end;

onde cdsEventos é um ClientDataSet em memória, ordenado por Data/Hora (porque os eventos podem vir fora de ordem),

Bom, é isso. Se alguém está fazendo de alguma outra forma, favor compartilhar :-)

Boa tarde. Amigo Reinaldo, essa função continua funcionando para as notas a partir da versão 4.0? Não estou conseguindo obter os eventos relacionados a NFe. Alguma modificação com relação a isso ou realmente essa é o único modo?. Desde já agradeço...

  • Moderadores
Postado
9 minutos atrás, mhborgatto disse:

Boa tarde. Amigo Reinaldo, essa função continua funcionando para as notas a partir da versão 4.0? Não estou conseguindo obter os eventos relacionados a NFe. Alguma modificação com relação a isso ou realmente essa é o único modo?. Desde já agradeço...

Já respondido aqui:

Favor não postar em mais de um tópico o mesmo assunto.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

  • Este tópico foi criado há 2484 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.