Ir para conteúdo
  • Cadastre-se

dev botao

Erro no envio de cancelamento do CT-e por evento


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

Recommended Posts

  • Membros Pro
49 minutos atrás, José M. S. Junior disse:

Bom dia, parece estar faltando o método "infEvento.cOrgao"

Bom dia.

Então, no exemplo do ACBRCTE-e não consta esse método, embora vi que ele existe.

Qual seria o valor para o preenchimento desse método?

Grato.

Gilberto F. Rezende

 

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Gilberto,

Foi gerado os XMLs de envio e de retorno?

Se sim, favor anexa-los.

Pois a mensagem: "Erro não Catalogado" se refere a SEFAZ.

  • Curtir 1
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

Se o XML de do CTe foi gerado, não seria mais fácil carregar ele no componente e utilizar a função de cancelamento :

 

    CTe.Conhecimentos.Clear;
    CTe.Conhecimentos.LoadFromFile(OpenDialog1.FileName);
    aNumeroCanc := CTE.Conhecimentos.Items[0].CTe.Ide.nCT;
    if not(InputQuery('Cancelamento do CTe:', 'Justificativa', vAux)) then exit;
    if not CTE.Cancelamento(vAux, 1) then
    begin
      ShowMessage('Cancelamento não, verifique todas as informações indicadas no cancelamento');
      exit;
    end;
 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Gilberto,

Foi gerado os XMLs de envio e de retorno?

Se sim, por favor anexa os XMLs e não o código da sua aplicação.

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

  • Consultores

Gilberto,

Esses XMLs se refere ao envio e retorno do CT-e e não do envio e retorno do evento de cancelamento.

Desculpe, mas não consigo entender essa mania de alguns desenvolvedores tem em querer alterar o nome do XML, sendo que existe uma nomenclatura definida no manual.

 

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

  • Membros Pro

Boa tarde...

Então. Quando envio o cancelamento, a execução do programa para nessa linha:

 ACBrCTe.EnviarEvento(iLote);   

e na sequência não são executadas as linhas a seguir:

MemoResp.Lines.Text :=  UTF8Encode(ACBrCTe.WebServices.EnvEvento.RetWS);
memoRespWS.Lines.Text :=  UTF8Encode(ACBrCTe.WebServices.EnvEvento.RetWS);
LoadXML(MemoResp, WBResposta);

Grato.

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
2 horas atrás, podiuminformatica disse:

 

erro4.jpg

Veja que no topo da imagem você tem este trecho de código:
 

with ACBrCTe.EventoCTe.Evento.Add do
begin
end;

Ou seja, você está gerando um evento novo mas sem preencher as propriedades.

Abaixo você cria um segundo evento e aí sim faz o preenchimento.

Provavelmente é esse trecho de cima que está gerando a exceção, remova.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
8 minutos atrás, BigWings disse:

Veja que no topo da imagem você tem este trecho de código:
 


with ACBrCTe.EventoCTe.Evento.Add do
begin
end;

Ou seja, você está gerando um evento novo mas sem preencher as propriedades.

Abaixo você cria um segundo evento e aí sim faz o preenchimento.

Provavelmente é esse trecho de cima que está gerando a exceção, remova.

Boa tarde.

Segue anexo código completo da rotina.

Grato.

codigo_completo.txt

Agora, podiuminformatica disse:

Boa tarde.

Segue anexo código completo da rotina.

Grato.

codigo_completo.txt

 

Este Código

with ACBrCTe.EventoCTe.Evento.Add do
begin
end;

Eu já havia removido antes.

Link para o comentário
Compartilhar em outros sites

  • Moderadores
19 minutos atrás, podiuminformatica disse:

Boa tarde.

Segue anexo código completo da rotina.

Grato.

codigo_completo.txt

Nesse caso deve estar faltando a configuração da UF do webservice no componente.

Exemplo do demo:

ACBrCTe1.Configuracoes.WebServices.UF         := cbUF.Text;
ACBrCTe1.Configuracoes.WebServices.Ambiente   := StrToTpAmb(Ok,IntToStr(rgTipoAmb.ItemIndex+1));

E faça o que o Italo pediu, configure o componente para salvar os arquivos de envio e retorno:
 

ACBrCTe1.Configuracoes.Arquivos.Salvar := True;
ACBrCTe1.Configuracoes.Arquivos.PathEvento := edtPathEvento.Text;

E anexe os arquivos *-ped-eve.xml e *-eve.xml gerados.

 

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa noite,

BigWings, somente uma observação, para salvar os arquivos de envio e retorno a propriedade é outra:

ACBrCTe1.Configuracoes.Geral.Salvar := True;

  • Curtir 1
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

  • Consultores
  • Solution

Bom dia Gilberto,

Você pode simplificar a sua rotina de cancelamento, veja:

ACBrCTe1.Conhecimentos.LoadFromFile(xNomeXMLCTe, False); // xNomeXMLCTe contem o nome completo do XML do CTe que se deseja cancelar

ACBrCTe1.Cancelamento(xJustificativa, nLote); // xJustificativa contem o motivo do cancelamento (minimo de 15 caracteres) e nLote contem o numero do lote do evento
 

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

  • Membros Pro
2 horas atrás, Italo Jurisato Junior disse:

Bom dia Gilberto,

Você pode simplificar a sua rotina de cancelamento, veja:

ACBrCTe1.Conhecimentos.LoadFromFile(xNomeXMLCTe, False); // xNomeXMLCTe contem o nome completo do XML do CTe que se deseja cancelar

ACBrCTe1.Cancelamento(xJustificativa, nLote); // xJustificativa contem o motivo do cancelamento (minimo de 15 caracteres) e nLote contem o numero do lote do evento
 

Grato pela atenção.

Tenha um ótimo dia.

Link para o comentário
Compartilhar em outros sites

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