Ir para conteúdo
  • Cadastre-se

dev botao

Cce - Erro Código: 573 - Duplicidade Do Evento - Mas Foi Enviado?


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

Recommended Posts

Prezados amigos bom dia!

 

Por favor uma ajuda:

A tempos que não tenho que utilizar a CC-e aqui na empresa, fiz as atualizações devidas quanto ao envio por evento mas:

 

Esta retornando o erro código: 573 - Duplicidade de evento (tpEvento + chNfe + nSeqEvento), acredito ser conforme, estive lendo em alguns post do amigo Régys, o número sequencial do evento, mas acontece que ao consultar a NFe na base da SEFAZ, consta o envio da correção.

 

NFe chave de acesso: 35130613378171000109550000000033171000033173

 

Que papagaida estou fazendo?

 

Agradeço pela atenção de todos.

 

Abraços.

 

José de Moura 

 

Linhas do código:

...

    NumeroLote := StrToInt(FormatDateTime('yymmddhhmm', NOW));
    ACBrNFe1.EventoNFe.Evento.Clear;
    ACBrNFe1.EventoNFe.idLote := NumeroLote;
    with ACBrNFe1.EventoNFe.Evento.Add do begin
        infEvento.chNFe                := Chave;
        infEvento.cOrgao                        := StrToInt(Copy(Chave,1,2));
        infEvento.CNPJ                           := CNPJ;
        infEvento.dhEvento                     := now;
        infEvento.tpEvento                      := teCCe;
        infEvento.nSeqEvento                 := StrToInt(nSeqEvento);
        infEvento.versaoEvento               := '1.00';
        infEvento.detEvento.descEvento := 'Carta de Correção';
        infEvento.detEvento.xCorrecao   := Correcao;
        infEvento.detEvento.xCondUso    := ''; //Texto fixo conforme NT 2011.003 -  http://www.nfe.fazenda.gov.br/portal
    end;
    ACBrNFe1.EnviarEventoNFe(StrToInt(idLote));
    MemoResp.Lines.Text := UTF8Encode(ACBrNFe1.WebServices.EnvEvento.RetWS);
    LoadXML(MemoResp, WBResposta);


  if ACBrNFe1.EnviarEventoNFe(NumeroLote) then begin
    with ACBrNFe1.WebServices.EnvEvento do begin
      if not(EventoRetorno.retEvento.Items[0].RetInfEvento.cStat in [135, 136]) then begin
        raise EDatabaseError.CreateFmt(
          'Ocorreu o seguinte erro ao enviar a carta de correção:'  + sLineBreak +
          'Código:%d' + sLineBreak +
          'Motivo: %s', [
            EventoRetorno.retEvento.Items[0].RetInfEvento.cStat,
            EventoRetorno.retEvento.Items[0].RetInfEvento.xMotivo
        ]);
      end;

      // retornos
      DataHoraEvento   := EventoRetorno.retEvento.Items[0].RetInfEvento.dhRegEvento;
      NumeroProtocolo  := EventoRetorno.retEvento.Items[0].RetInfEvento.nProt;
      XMLCCe                := EventoRetorno.retEvento.Items[0].RetInfEvento.XML;
      CodigoStatus        := EventoRetorno.retEvento.Items[0].RetInfEvento.cStat;
      MotivoStatus         := EventoRetorno.retEvento.Items[0].RetInfEvento.xMotivo;
    end;
  end else begin
    with ACBrNFe1.WebServices.EnvEvento do begin
      raise Exception.Create(
        'Ocorreram erros ao enviar a Carta de Correção:' + sLineBreak +
        'Lote: '     + IntToStr(EventoRetorno.idLote) + sLineBreak +
        'Ambiente: ' + TpAmbToStr(EventoRetorno.tpAmb) + sLineBreak +
        'Orgao: '    + IntToStr(EventoRetorno.cOrgao) + sLineBreak +
        sLineBreak +
        'Status: '   + IntToStr(EventoRetorno.cStat) + sLineBreak +
        'Motivo: '   + EventoRetorno.xMotivo
      );
    end;
  end;
 

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores

 infEvento.nSeqEvento := StrToInt(nSeqEvento);

 

A cada vez que você envia deve incrementar o infEvento.nSeqEvento não podem existir dois eventos com esse número igual.

Lembre que a última CC-e substitui todas as anteriores, portanto, deve conter o texto completo e a incrementação do sequencial.

  • Curtir 1

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
Link para o comentário
Compartilhar em outros sites

 infEvento.nSeqEvento := StrToInt(nSeqEvento);

 

A cada vez que você envia deve incrementar o infEvento.nSeqEvento não podem existir dois eventos com esse número igual.

Lembre que a última CC-e substitui todas as anteriores, portanto, deve conter o texto completo e a incrementação do sequencial.

Boa tarde, Regys.

 

Se entendi certo você diz que :

 

1 evento CC-e ex.: Quantidade = 12

2 evento CC-e ex.: Quantidade = 12 + Volume caixa granel

 

3 evento CC-e tem que contem as alterações 1,2  + 3

 

E isto mesmo ?

 

Obrigado

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Sim isso mesmo, a última sobrepões todas as outras anteriores, portanto, deve conter as correções anteriores.

 

Uma observação quanto ao seu exemplo:

 

 

A Carta de Correção é disciplinada pelo § 1º-A do art. 7º do Convênio S/N, de 15 de dezembro de 1970 e pode ser utilizada para regularização de erro ocorrido na emissão de documento fiscal, desde que o erro não esteja relacionado com: 

I - as variáveis que determinam o valor do imposto tais como: base de cálculo, alíquota, diferença de preço, quantidade, valor da operação ou da prestação

II - a correção de dados cadastrais que implique mudança do remetente ou do destinatário

III - a data de emissão ou de saída.

 

 

  • Curtir 1

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
Link para o comentário
Compartilhar em outros sites

Régys, muito obrigado pela atenção, mas me explica uma coisa por favor:

 

Houve o erro, certo?

Como é que pode ter sido enviado os dados?

Fiz dois envios e ambas retornaram o erro e seguiram a alteração, não é estranho?

 

Abraços ao amigo (da terra de Dona Beija).

 

José de Moura

Link para o comentário
Compartilhar em outros sites

Régys, boa tarde!

 

É isso mesmo.

Acima, no primeiro post, eu mencionei a chave de acesso da NF-e (35130613378171000109550000000033171000033173), para que se pudesse ver na consulta, que havia sido registrado a carta de correção.

Por isso que estou estranhando e perdido com esta situação, pois me retorna o erro e meu aplicativo não segue em frente, pois com o erro ele sai e sequer grava os retornos e nem o XML.

 

Grande abraço!

 

José de Moura

 

Ps: O trem bão sô. (sobre Araxá vamos falar em PVT. Ok?).

 

Abraços a todos da lista também.

Link para o comentário
Compartilhar em outros sites

  • 2 anos depois...

Prezados, boa tarde!

Estou recebendo o cStat 573 também sobre duplicidade no evento. Estou tentando liberar a carta no meu sistema quando receber este cStat, afinal ele apenas informa que o evento já foi enviado e registrado, mas quando uso a linha de código abaixo, da o erro "constant expression violates subrange bounds", porque inclui o código 573, mas não encontrei onde tem os código cStat para verificar a existência do 573 lá. Podem me ajudar?

    "if (ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat in [128, 135, 573]) then"
 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • 1 ano depois...
Em 11/04/2017 at 10:34, Renyldo Campos Pereira disse:

?

Registre os envios que você realiza dos eventos, ficará mais fácil de se obter o numero sequencial, não tente ficar consultando, isso irá causar bloquei temporário da Sefaz, impedindo você de realizar consultas e transmissões por x minutos

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2569 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.

The popup will be closed in 10 segundos...