Ir para conteúdo
  • Cadastre-se

dev botao

Atualização Do Xml De Cancelamento Do Ct-E


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

Recommended Posts

Olá Pessoal,

 

Pesquisei aqui no fórum mas não encontrei nada a respeito referente à Ct-e, apenas ao Nf-e, mas sem resultados. Caso já exista um tópico peço desculpas antecipadamente.

 

Vamos à situação:

1. Faço o cancelamento do CT-e por evento;

2. Faço a consulta do CT-e cancelado;

3. Salvo o XML do CT-e consultado, porém está salvando o XML da nota autorizada e não cancelada.

 

Segue abaixo o código do cancelamento, consulta e gravação do arquivo XML do CT-e cancelado. Onde estou errando?

      vCTe.Configuracoes.Certificados.NumeroSerie := NumeroCertificado;
      vCTe.Configuracoes.Certificados.Senha := SenhaCertificado;
      vCTe.Configuracoes.WebServices.UF := UF;
      vCTe.Configuracoes.WebServices.Ambiente := Ambiente;
      vCTe.Configuracoes.Geral.PathSchemas := ExtractFilePath(Application.ExeName) + '\SchemasCte\';

      vCTe.Configuracoes.Geral.AtualizarXMLCancelado := True;
      vCTe.Configuracoes.Arquivos.Salvar := True;
      vCTe.Configuracoes.Arquivos.EmissaoPathCTe := True;
      vCTe.Configuracoes.Arquivos.PathCCe := Format('%s\CTe\Cancelamento', [PathXML]);
      vCTe.Configuracoes.Arquivos.PathCTe := Format('%s\CTe\Cancelamento', [PathXML]);
      vCTe.Configuracoes.Arquivos.PathCan := Format('%s\CTe\Cancelamento', [PathXML]);

      /// Cancelamento
      vCTe.Conhecimentos.Clear;
      vCTe.Conhecimentos.Add.CTe.infCTe.ID := aChaveCTe;
      vCTe.EventoCTe.Evento.Clear;
      with vCTe.EventoCTe.Evento.Add do
      begin
       infEvento.nSeqEvento      := 1; // Para o Evento de Cancelamento: nSeqEvento sempre = 1
       infEvento.chCTe           := aChaveCTe;
       infEvento.CNPJ            := aCNPJEmissor;
       infEvento.dhEvento        := now;
       infEvento.tpEvento        := teCancelamento;
       infEvento.detEvento.xJust := trim(aJustificativa);
       infEvento.detEvento.nProt := aProtocolo;
      end;
      vCTe.EnviarEventoCTe(1);

      /// Consulta
      vCTe.WebServices.Consulta.CTeChave := aChaveCTe;
      vCTe.WebServices.Consulta.Executar;

      /// Salvamento do XML do CT-e cancelado
      vsNomeArquivo := Format('%s-cte.xml', [aChaveCTe]);
      vCTe.Conhecimentos.Items[0].SaveToFile(Format('%s\CTe\Cancelamento\%s', [PathXML, vsNomeArquivo]));

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Bom dia

Está correto ! não concorda?

ao meu ver a partir do momento que NF-e e CT-e passaram a ser cancelado por evento, existe um evento atrelado ao documento evidenciando ele como cancelado, mas o xml está original e vai continuar original, em momento algum se fala em alteração e se você for consultar no site da receita e baixar seu xml estará original tanto nf-e quanto ct-e, e somente temos um evento que está cancelando ele! ;)

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

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

 

Link para o comentário
Compartilhar em outros sites

Aí que está.... a Bradesco Seguros está me cobrando o XML do CT-e cancelado, com o campo <infProt><cStat> com o conteúdo 101.

 

Mas, não havia pensado sobre os eventos. Vou tentar enviar o XML do evento de cancelamento e esperar a reclamação. 

Editado por Luciano Alberti
Link para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution

Bom dia Luciano,

 

Manual versão 2.00a do CT-e disponibilizado no Portal Nacional do CT-e.

 

Página 108

 

item 12.2 temos o Lay-out de compartilhamento: CT-e (*-cte.XML)

 

Note que o XR06 é uma área de dados que se refere ao protocolo de Autorização de Uso.

 

item 12.4 temos o Lay-out de compartilhamento: Registro de Evento de CT-e (*-procEventoCTe.XML)

 

Lembre-se que o cancelamento na versão 2.00 é um evento.

 

Note que não existe um Lay-out de compartilhamento especifico para o cancelamento.

 

Portanto concluímos que: como o cancelamento é um evento devemos informar o tomador do serviço que o CT-e foi cancelado, através do Lay-out de compartilhamento de Registro de Evento.

  • Curtir 2
Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

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