Jump to content

dev botao

NFS-e - Tratar Exception EACBrDFeException


Go to solution Solved by colmanetti,
  • Este tópico foi criado há 850 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Quando gero a a NFS-e  gera a exception no DELPHI gostaria pegar esta exceção, mas não estou conseguindo:

    if VO_NFE.SEM_TELA then
    begin
      try
        ACBrNFSe1.Emitir(IntToStr(VO_NFE.Lote),meAutomatico,False);     ********Exceção  nesta linha na procedure abaixo********
      except on e:Exception do
        begin
          infobox('Erro','Erro(1): ' + E.Message);                                                *********Não PASSA AQUI NO DEBUG*******
          VO_NFE.ERRO_NFS:=e.Message;
          exit;
        end;
      end;
    end else
    begin
      ACBrNFSe1.Emitir(IntToStr(VO_NFE.Lote));
    end;


 

 

 

 

 

procedure TACBrNFSeXWebservice.UsarCertificado;
var
  TemCertificadoConfigurado: Boolean;
begin
  FPDFeOwner.SSL.UseCertificateHTTP := TACBrNFSeX(FPDFeOwner).Provider.ConfigGeral.UseCertificateHTTP;

  if FPDFeOwner.SSL.UseCertificateHTTP then
  begin
    TemCertificadoConfigurado := (FPConfiguracoes.Certificados.NumeroSerie <> '') or
                                 (FPConfiguracoes.Certificados.DadosPFX <> '') or
                                 (FPConfiguracoes.Certificados.ArquivoPFX <> '');

    if TemCertificadoConfigurado then
      if FPConfiguracoes.Certificados.VerificarValidade then
        if (FPDFeOwner.SSL.CertDataVenc < Now) then
          raise EACBrDFeException.Create('Data de Validade do Certificado já expirou: '+
                                            FormatDateBr(FPDFeOwner.SSL.CertDataVenc));                                                          ==============>  gera esta Exception
  end;
end;

Link to comment
Share on other sites

  • Membros Pro
  • Solution

Achei o tratamento sem o try/except   pela resposta do webservice.

    if VO_NFE.SEM_TELA then
    begin
      ACBrNFSe1.Emitir(IntToStr(VO_NFE.Lote),meAutomatico,False);
    end else
    begin
      ACBrNFSe1.Emitir(IntToStr(VO_NFE.Lote));
    end;
    ChecarResposta(tmRecepcionar);
    VO_NFE.ERRO_NFS:='';
    for cont:=0 to ACBrNFSe1.WebService.Emite.Erros.Count-1 do
    begin
      VO_NFE.ERRO_NFS:=VO_NFE.ERRO_NFS+ACBrNFSe1.WebService.Emite.Erros.Items[cont].Codigo+'-'+
                                       ACBrNFSe1.WebService.Emite.Erros.Items[cont].Descricao;
    end;
 

 

 

Link to comment
Share on other sites

  • Este tópico foi criado há 850 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...