Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

boa tarde! Estou tentando salvar um retorno do cancelamento de NF-e e está ficando desta forma abaixo:

Capturar2.JPG.97ca8fb37687c2671c3c99321591ca54.JPG

 

Estou fazendo da seguinte forma o cancelamento da NF-e:

 

         // Criar o cancelamento
          fConfigACBR_NFe.ACBrNFe.EventoNFe.Evento.Clear;
          //fConfigACBR_NFe.ACBrNFe.EventoNFe.idLote := iNumLotFat;

          with fConfigACBR_NFe.ACBrNFe.EventoNFe.Evento.Add do
          begin
            infEvento.chNFe           := chaveNFe;
            infEvento.CNPJ            := gEmpCgc;
            infEvento.dhEvento        := NOW;
            infEvento.tpEvento        := teCancelamento;
            infEvento.detEvento.nProt := nProtocolo;
            infEvento.detEvento.xJust := sJustifica;
          end;

          try
          // Enviar o evento de cancelamento

          if fConfigACBR_NFe.ACBrNFe.EnviarEvento(iNumLotFat) then
          begin
            with fConfigACBR_NFe.ACBrNFe.WebServices.EnvEvento do
            begin
              if (EventoRetorno.retEvento.Items[0].RetInfEvento.cStat <> 101) and // 101 - cancelamento homologado
                 (EventoRetorno.retEvento.Items[0].RetInfEvento.cStat <> 135) and // 135 - Evento registrado e vinculado a NF-e (cancelamento de NF-e homologado)
                 (EventoRetorno.retEvento.Items[0].RetInfEvento.cStat <> 151) and // 151- cancelamento homologado fora do prazo
                 (EventoRetorno.retEvento.Items[0].RetInfEvento.cStat <> 155) then // 155 - Evento registrado e vinculado a NF-e fora de prazo;
              begin
                raise Exception.CreateFmt(
                'Ocorreu o seguinte erro ao cancelar a nota fiscal eletrônica:'  + sLineBreak +
                'Código:%d' + sLineBreak +
                'Motivo: %s', [
                 EventoRetorno.retEvento.Items[0].RetInfEvento.cStat,
                 EventoRetorno.retEvento.Items[0].RetInfEvento.xMotivo
                 ]);
              end;

              // retornos
              sData1  := FormatDateTime('DD/MM/YYYY',EventoRetorno.retEvento.Items[0].RetInfEvento.dhRegEvento);
              sHOra1  := FormatDateTime('HH:MM:SS',EventoRetorno.retEvento.Items[0].RetInfEvento.dhRegEvento);
              nProtocoloCanc  := EventoRetorno.retEvento.Items[0].RetInfEvento.nProt;

              wXML            := ConverteXMLtoUTF8(EventoRetorno.retEvento.Items[0].RetInfEvento.XML); // aqui eu pego o retorno
              sStat           := IntToStr(EventoRetorno.retEvento.Items[0].RetInfEvento.cStat);
              sMotivo         := EventoRetorno.retEvento.Items[0].RetInfEvento.xMotivo;
              ffcDB_NFe.rtfProcCancNFe.Text := wXML;
              //SALVA ARQUIVO XML ASSINADO E PROTOCOLADO
              ffcDB_NFe.rtfProcCancNFe.Lines.SaveToFile(gLocalAplicativo+'ARQS\XML\NF-e\_CANCELADO\'+s_Arquivo);  aqui estou salvando o mesmo
              sPath      := gLocalAplicativo+'ARQS\XML\NF-e\_CANCELADO\'+s_Arquivo;

              Mensagem('Arquivo XML do cancelamento salvo na pasta: '+gLocalAplicativo+'ARQS\XML\NF-e\_CANCELADO\'+s_Arquivo);

 

O que estou fazendo de errado?

 

Atenciosamente,

Tatiane Peixoto.

 

 

NF000023978_CAN.XML

  • Fundadores
Postado
29 minutos atrás, Tatiane Peixoto disse:

              wXML            := ConverteXMLtoUTF8(EventoRetorno.retEvento.Items[0].RetInfEvento.XML); // aqui eu pego o retorno

Porque você está convertendo para UTF8, um XML que provavelmente já foi retornado em UTF8 ?

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Postado
14 horas atrás, Daniel Simoes disse:

Porque você está convertendo para UTF8, um XML que provavelmente já foi retornado em UTF8 ?

Bom dia Daniel,

Peguei de uma rotina dai deixei do jeito q estava! Mas mesmo assim fiz um teste sem usar essa função para converter o XML e fica da mesma forma.

 

  • Solution
Postado

Bom dia pessoal!

Só retornando pra dizer que foi resolvido, o problema era do componente memo o qual jogava o retorno do xml do cancelamento nele e depois mandava salvar. Tirei o componente memo e coloquei novamente dai salvou certinho, talvez tenha sido alguma configuração do memo..

Agradeço a atenção!

Atenciosamente,

Tatiane Peixoto.

 

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