Ir para conteúdo
  • Cadastre-se

dev botao

Erro ao cancelar NFe 4.00 GO


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

Recommended Posts

Bom dia,

  Estou tendo um problema em minha aplicação na hora de fazer o cancelamento das NFe's 4.00, o serviço de emissão, consulta, inutilização estão funcionando perfeitamente.
No cancelamento acontece o seguinte, o envio está sendo feito, tanto, que se eu consultar, o sistema me retorna que está cancelada.
No demo está acontecendo a mesma coisa, alguém está passando ou passou por esse problema?

 

Em anexo está a mensagem que o demo está me retornando.

 

Desde já agradeço pela ajuda de todos.

Cancelamento4.00.PNG

Link para o comentário
Compartilhar em outros sites

8 minutos atrás, André Ferreira de Moraes disse:

Configure o demo para salvar os arquivos enviados e recebidos do webservice e anexe os arquivos gerados.

ok.

Segue os arquivos gerados.

1707121152-eve.xml

1707121152-ped-eve.xml

52170726300367000114550010000001251000001257-nfe.xml

52170726300367000114550010000001251000001257-sit.xml

52170726300367000114550010000001251000001257-ped-sit.xml

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Ative a propriedade  ACBrNFe1.Configuracoes.WebServices.Salvar e refaça o cancelamento.

Debug a função procedure TDFeWebService.SalvarResposta;    da unit ACBrDFeWebService.pas para ver onde o arquivo está sendo gerado.

djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.lambretinha.com.br
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Pelos arquivos anexados o webservice não está retornando nenhum conteúdo para o comando de cancelamento. Como não tenho certificado do estado e SP ainda não liberou a versão 4.0 não tenho como testar.

djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.lambretinha.com.br
Link para o comentário
Compartilhar em outros sites

No debug, quando é passado o paramentro "FPRetWS := SeparaDados(FPRetornoWS, 'nfeRecepcaoEventoResult')", para a rotina, trecho abaixo, não é encontrado este parâmetro "nfeRecepcaoEventoResult" e nem o "NS2" apresentado na linha PosIni := Pos('NS2:' + UChave, UTexto) , no FPRetornoWS, por isso o result é vazio, embora o retorno seja "Cancelamento da nfe homolagado":

function SeparaDados(const AString: String; const Chave: String;
  const MantemChave: Boolean): String;
....
PosIni := Pos('<' + UChave, UTexto) ;
     if PosIni > 0 then
     begin
       PosIni := PosIni + Pos('>', copy(UTexto, PosIni, length(UTexto))); Aqui a variável UTexto tem o valor "nfeRecepcaoEventoResult" que não é encontrado no retorno da sefaz
       PosFim := Pos('/' + UChave, UTexto);
     end;
     if (PosFim = 0) then
      begin
        PosIni := Pos('NS2:' + UChave, UTexto) , aqui o valor "NS2" também não é encontrado no retorno da sefaz por isso as variavels PosIni e PosFim retornam com o valor 0;
        if PosIni > 0 then
        begin
          PosIni := PosIni + Pos('>', copy(UTexto, PosIni, length(UTexto)));
          PosFim := Pos('/NS2:' + UChave, UTexto);
        end ;
      end;
   end;
Teria que refazer a rotina??compl
Editado por alaran
complemento
Link para o comentário
Compartilhar em outros sites

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