Ir para conteúdo
  • Cadastre-se

dev botao

Falha ao enviar evento de cancelamento


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

Recommended Posts

Postado

Bom dia, estou tentando fazer o cancelamento de uma nota mas não estou conseguindo, está aparecendo seguinte erro:

Falha ao assinar o envio do evento. DadosPFX, ArquivoPFX ou NumeroSerie não especificados.

 A nota está na versão 4.0.

O código utilizado é esse:

Quando chega em EnviarEvento apresenta o erro.

 DataHoraEvento := NOW;
  NumeroLote     := ds_NFe.DataSet.FieldByName('numerocfe').AsInteger;  //StrToInt(FormatDateTime('yymmddhhmm', NOW));

  AnoDoc := Copy(DateToStr(DM_NFe.db_NFeEMISSAO.Value),7,4);
  MesDoc := Copy(DateToStr(DM_NFe.db_NFeEMISSAO.Value),4,2);

  if not frmPrincipal.ACBrNFe1.NotasFiscais.LoadFromFile(IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName) +'\Transmitidas' ) +'\' + AnoDoc + MesDoc +'\' + ds_Nfe.DataSet.FieldByName('nomeArquivo').AsString) then
    raise Exception.Create('Nao foi possivel carregar o xml da nota');


  frmPrincipal.ACBrNFe1.EventoNFe.Evento.Clear;
  frmPrincipal.ACBrNFe1.EventoNFe.idLote := NumeroLote;

  with frmPrincipal.ACBrNFe1.EventoNFe.Evento.Add do
  begin
    infEvento.CNPJ            := frmPrincipal.db_emitenteCNPJ.Value; // cnpj do emitente da nota
    infEvento.dhEvento        := DataHoraEvento;
    infEvento.tpEvento        := teCancelamento;
    infEvento.chNFe           := ds_NFe.DataSet.FieldByName('chavecfe').AsString;  //frmPrincipal.ACBrNFe1.NotasFiscais[0].NFe.procNFe.chNFe;
    infEvento.detEvento.nProt := ds_NFe.DataSet.FieldByName('protocolo').AsString; //frmPrincipal.ACBrNFe1.NotasFiscais[0].NFe.procNFe.nProt;
    infEvento.detEvento.xJust := EdtJustifica.Text;
  end;

  if frmPrincipal.ACBrNFe1.EnviarEvento(NumeroLote) then
  begin
    with frmPrincipal.ACBrNFe1.WebServices do
    begin
      if EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat <> 135 then
      begin
        raise Exception.CreateFmt(
          'Ocorreu o seguinte erro ao cancelar a nota fiscal eletrônica:'  + sLineBreak +
          'Código:%d' + sLineBreak +
          'Motivo: %s', [
            EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat,
            EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.xMotivo
        ]);
      end;
    end;
  end
  else
  begin
    with frmPrincipal.ACBrNFe1.WebServices.EnvEvento do
    begin
      raise Exception.Create(
        'Ocorreram erros ao tentar efetuar o cancelamento:' + 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;

 

26180404260169000131650010000001171000001170-nfe.xml

  • Moderadores
  • Solution
Postado
2 horas atrás, Antonino disse:

Falha ao assinar o envio do evento. DadosPFX, ArquivoPFX ou NumeroSerie não especificados.

Falta configurar essas propriedades no componente.

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

Projeto ACBr

 

 

Postado
36 minutos atrás, BigWings disse:

Falta configurar essas propriedades no componente.

Era isso mesmo, valeu, só estava configurado no envio da nota, faltou no cancelamento.

Obrigado.

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