Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

  • Administradores
Postado

Boa tarde.
 

Essa sitação foi reproduzida em seu ambiente?

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Moderadores
Postado

O XML ou o PDF? Para envio do XML basta que a NFe tenha sido carregada no componente antes de chamar o método de envio. Para o PDF basta passar o parâmetro "EnviaPDF" como True na função (EnviarEmail).

Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

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

Postado

Bom dia, já fiz esses testes. Já enviei para meu próprio email e continua chegando somente o PDF. Abaixo vou deixar o código do método como estou usando. Para que possa entender melhor.

procedure TfrmEnviaNfeEmail.btnEnviaClick(Sender: TObject);
var
 Para : String;
 CC: Tstrings;
  Dir, ArqXML: String;
  MS: TMemoryStream;
  P, N: Integer;
begin
   if not  FileExists( dmnf.znfeCHAVE_NFE.AsString ) then
   raise Exception.Create('Arquivo Xml, não localizado ou inexistente!');

 try

  with fsindatanfe2 do
  begin

   ACBrNFe1.NotasFiscais.Clear;
   ACBrNFe1.NotasFiscais.LoadFromFile(dmnf.znfeCHAVE_NFE.AsString);

//Corri
  MS := TMemoryStream.Create;
    try
      ArqXML := dmnf.znfeCHAVE_NFE.AsString;
      MS.LoadFromFile(ArqXML);
      fsindatanfe2.ACBrMail1.AddAttachment(MS, 'XML',adAttachment);
    finally
     MS.Free;
    end;
   CC        := TstringList.Create;
   Para      := edtPara.Text;
   cc.Text   := '';

  fsindatanfe2.ACBrNFe1.NotasFiscais.Items[0].EnviarEmail(Para
                                          , edtAssunto.Text
                                          , memMsg.Lines
                                          , True
                                          , cc
                                          , cc);

     ShowMessage('Email Enviado com Sucesso!');
     cc.Free;
    end;

    except
      on E:Exception do
      begin
         ShowMessage('Erro: '+ E.Message);
      end;

    end;
end;

  • Consultores
Postado

Bom dia,

Para mim tem coisa errada na sua rotina.

o trecho abaixo não precisa:

//Corri
  MS := TMemoryStream.Create;
    try
      ArqXML := dmnf.znfeCHAVE_NFE.AsString;
      MS.LoadFromFile(ArqXML);
      fsindatanfe2.ACBrMail1.AddAttachment(MS, 'XML',adAttachment);
    finally
     MS.Free;
    end;
   CC        := TstringList.Create;
   Para      := edtPara.Text;
   cc.Text   := '';

Pois ao carregar o XML como o LoadFromFile o método EnviarEmail já anexa automaticamente o XML.

Outra coisa:

fsindatanfe2.ACBrNFe1.NotasFiscais.Items[0].EnviarEmail(Para
                                          , edtAssunto.Text
                                          , memMsg.Lines
                                          , True    <==== isso esta correto, pois é o parâmetro que diz que você deseja enviar o PDF do DANFE também.
                                          , cc      <=== aqui devemos informar a lista de email que desejamos enviar também (CC- Com Cópia)
                                          , cc);    <=== isso esta errado, pois aqui devemos informar outros anexos, o correto seria informar o valor: Nil

 

Favor se basear no programa exemplo do componente.

 

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

Bom dia Italo. Tudo bom? Eu já testei comentando esse trecho do código. E outra estava funcionando antes no 3.1 é uma rotina velha no sistema de 4,5 anos que nunca foi alterada.  Já observei o código da Demo. E obrigado pelo retorno. 

  • Consultores
Postado

Boa tarde,

Já tentou desta forma:

with fsindatanfe2 do
 begin 
   ACBrNFe1.NotasFiscais.Clear;
   ACBrNFe1.NotasFiscais.LoadFromFile(dmnf.znfeCHAVE_NFE.AsString); 

   ACBrNFe1.NotasFiscais.Items[0].EnviarEmail(Para
                                            , edtAssunto.Text
                                            , memMsg.Lines
                                            , True
                                            , nil
                                            , nil);
 

   ShowMessage('Email Enviado com Sucesso!');
 end; 
 

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Consultores
Postado

Bom dia,

Isso é muito estranho.

Favor verificar se realmente o XML da nota esta sendo carregado.

Verifique também se o antivírus não esta removendo automaticamente do e-mail arquivos XML que por ventura estão em anexo.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Administradores
Postado

Tópico fechado por falta de retorno do usuário

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Este tópico foi criado há 2283 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.