Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

  • Membros Pro
Postado

Boa tarde

Estou com uma situação aqui..

Envio o evento de cancelamento de uma NFe:

ACBrNFe1.EnviarEventoNFe(1);

o retorno:

ACBrNFe1.WebServices.EnvEvento.EventoRetorno.cStat = 128

Até onde eu sei, o 128 significa que a NFe foi cancelada no Sefaz, porém, seu eu consultar no site, não aparece o Evento do cancelamento la.

Alguém teria alguma dica ?

 

  • Moderadores
Postado

Bom dia!

está falando da consulta no portal nacional?

lembre-se que tem um delay entre a sincronização do ambiente estadual e nacional então pode não estar!

depois de fazer isso você já fez a consulta de protocolo? para ver como está

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • Membros Pro
Postado

Bom dia

Eu cnaminhei um e-mail dessa situação para a SEFAZ-RS e recebi o retorno deles agora a pouco

Segundo eles, a nota não foi cancelado pq o protocolo de autorização que está sendo informado no evento de cancelamento é diferente do protocolo registrado para essa nota e que a SEFAZ retornou:

222 - Rejeicao: Protocolo de Autorizacao de Uso difere do cadastrado

Como mencionei no primeiro post, o código retornado no ACBR foi 128.  Onde deveria ter retornado esse 222 ?

 

  • Consultores
Postado

Bom dia Dércio,

Primeiramente, em relação ao status 128 mencionado na sua postagem anterior, você esta equivocado, veja o que diz a Nota Técnica:

Processamento do Lote – o lote foi processado (cStat=128), a validação de cada evento do lote poderá resultar em:
* Rejeição – o Evento será descartado, com retorno do código do status do motivo da rejeição;
* Recebido pelo Sistema de Registro de Eventos, com vinculação do evento na NF-e, o Evento será armazenado no repositório do Sistema de Registro de Eventos com a vinculação do Evento à respectiva NF-e (cStat=135);

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • 6 meses depois ...
Postado

Ruan Sousa,

O código que identifica o cancelamento homologado é cStat = 135 ou 155

cStat = 135 para cancelamento homologado dentro do prazo

cStat = 155 para cancelamento homologado fora do prazo

Pegue esse retorno aqui: ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat

 

Alan Lucas

http://www.dftech.com.br

  • Curtir 1

Assinatura.jpg

Postado

Acredito que a melhor forma seria apenas chamar o EnviarEvento, verificando se for True e em seguida testar se cada evento está entre um dos códigos aceitos...

Pois EnviarEvento pode:
Retornar True ao enviar evento de Cancelamento e o cancelamento não ter sido realizado (ex: existe cte ativa para a nota)
Retornar True ao enviar evento de Carta de correção e o evento de CCe não ter sido registrado (ex: CCe para nota já cancelada... claro que o software não me deixaria fazer isto normalmente, fiz uns testes só para analisar as respostas).
 

  FEvento.InfEvento.cOrgao     := FCodigoUF;
  FEvento.InfEvento.CNPJ       := FCNPJ;
  FEvento.InfEvento.tpAmb      := FOnwer.ACBr.Configuracoes.WebServices.Ambiente;
  FEvento.InfEvento.chNFe      := Chave;
  FEvento.InfEvento.nSeqEvento := Sequencia;
  FEvento.InfEvento.dhEvento   := Now;
 
  case FEventoTipo of
    nfevCartaCorrecao : begin
      FEvento.InfEvento.tpEvento            := teCCe;
      FEvento.InfEvento.detEvento.xCorrecao := Motivo;
      FEvento.InfEvento.detEvento.xCondUso  := '';
    end;
    nfevCancelamento : begin
      FEvento.InfEvento.tpEvento        := teCancelamento;
      FEvento.InfEvento.detEvento.xJust := Motivo;
      FEvento.InfEvento.detEvento.nProt := NotaProtocolo;
    end;
  end;

  Result := FOnwer.ACBr.EnviarEvento(1);
  Result := Result and (FEvento.RetInfEvento.cStat in [128,135,136,155]); //#rever 155
  if Result then begin
    FStatus    := FEvento.RetInfEvento.cStat; 
    FProtocolo := FEvento.RetInfEvento.nProt;
    FMotivo    := FEvento.RetInfEvento.xMotivo;
    FData      := FEvento.RetInfEvento.dhRegEvento;
    FHora      := FEvento.RetInfEvento.dhRegEvento;
  end else begin
    FFalha := Format('%d: %s', [FEvento.RetInfEvento.cStat, FEvento.RetInfEvento.xMotivo]);
  end;
  • Curtir 1
Postado
Em 16/03/2016 at 23:27, Alan Lucas disse:

Ruan Sousa,

O código que identifica o cancelamento homologado é cStat = 135 ou 155

cStat = 135 para cancelamento homologado dentro do prazo

cStat = 155 para cancelamento homologado fora do prazo

Pegue esse retorno aqui: ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat

 

Alan Lucas

http://www.dftech.com.br

Ok. Deu Certo. Obrigado.

  • 1 mês depois ...
  • Membros Pro
Postado
Em 27/08/2015 at 10:16, Juliomar Marchetti disse:

Bom dia!

está falando da consulta no portal nacional?

lembre-se que tem um delay entre a sincronização do ambiente estadual e nacional então pode não estar!

depois de fazer isso você já fez a consulta de protocolo? para ver como está

Boa tarde, em alguns momentos estou tendo rejeição 573 - Duplicidade, após tentar enviar novamente um evento, devido ao erro 12002 - Tempo Limite....

Para tentar sanar o erro 12002 já fiz tudo que encontrei no Fórum e atualmente meu componente está configurado para:

TimeOut - 15000
Aguardar - 5000
Intervalo - 3000
Tentativas - 1
AjustarAutomaticamente - True

Mas mesmo assim, em alguns casos tenho o erro 12002, e na segunda tentativa retorna 573, ou seja, na primeira tentativa enviou o evento e a SEFAZ acatou, porém, não recebi o retorno.

Então estou tentando sanar esses problemas, de forma que se retornar 573 tanto na CCe ou no Cancelamento, eu faça uma consulta do evento e tratar seu retorno.

Ai vai a pergunta. Como consulto o protocolo de um evento após ele ter sido enviado?

Obrigado.

  • 2 meses depois ...
Postado
Em 27/04/2016 at 20:05, Juliomar Marchetti disse:

Quando tenho esse tipo de problema eu faço a consulta da NF-e ! pois ela vai retornar o xml completo com todos os eventos atrelado a ela!

mas consulta para o evento em especifico não se tem!

Olá, estou com um problema semelhante ou igual.

Eu cancelo a nota fiscal, consta na receita que está cancelado mas no sistema não, dá timeout ou outra coisa do tipo.

Quando vou cancelar novamente é retornado o CSTAT = 573.

Consulto a nota fiscal e percebo que é carregado a propriedade ACBrNFe1.NotasFiscais.Items[0].XML com o xml junto com o cancelamento, tudo em um único xml, como você mesmo está dizendo.

Agora vem a minha pergunta, como que eu extraio apenas a parte do cancelamento para salvar no meu banco de dados?

 

Geralmente quando eu cancelo e ocorre tudo perfeitinho eu salvo o xml 1101113516070778845300017355001000000274100000274601-procEventoNFe.xml.

Agora quando da esse erro, como posso proceder?

Obrigada

  • 3 meses depois ...
Postado (editado)

Pessoal,

Fiz uma consulta a uma NFe CANCELADA e o retorno foi: ACBrNFe1.WebServices.Consulta.XMotivo = 'Cancelamento de NF-e homologado'

Logo depois dei o seguinte comando:     fNf_e.ACBrNFe1.NotasFiscais.Items[0].GravarXML('Cancelada.xml','c:\temp');

E no XML gravado não aparece o evento de cancelamento com seu protocolo conforme mostro no arquivo anexado.

Onde estou errando?

Obrigado desde já.

Cancelada.xml

Editado por econdotta
  • Este tópico foi criado há 2945 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.