Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

estou tentando fazer um envio em html, porém ao receber a mensagem ela aparece desse forma em meu outlook:

aparentemente intercala um caracter com um espaço! e não vem em html.

< s t y l e > # c u s t o m e r s { f o n t - f a m i l y : " T r e b u c h e t M S " , A r i a l , H e l v e t i c a , s a n s - s e r i f ; w i d t h : 1 0 0 % ; b o r d e r - c o l l a p s e : c o l l a p s e ; } # c u s t o m e r s t d , # c u s t o m e r s t h { f o n t - s i z e : 0 . 7 e m ; b o r d e r : 1 p x s o l i d # 9 8 b f 2 1 ; p a d d i n g : 3 p x 7 p x 2 p x 7 p x ; } # c u s t o m e r s t h { f o n t - s i z e : 1 e m ; t e x t - a l i g n : l e f t ; p a d d i n g - t o p : 5 p x ; p a d d i n g - b o t t o m : 4 p x ; b a c k g r o u n d - c o l o r : # A 7 C 9 4 2 ; c o l o r : # f f f f f f ; } # c u s t o m e r s t r . a l t t d { c o l o r : # 0 0 0 0 0 0 ; b a c k g r o u n d - c o l o r : # E A F 2 D 3 ; } < / s t y l e > < t a b l e i d = " c u s t o m e r s " > < T R > < t h c o l s p a n = 2 > N o t a f i s c a l E l e t r ô n i c a - N F - e < / t h > < / t r > < T R > < t h c o l s p a n = 2 > E m i t i d a p o r B E R G O E A L V E S I N F O R M A T I C A M E < / t h > < / t r > < T R > < t h c o l s p a n = 2 > C h a v e : O m i t i d a p o r q u e s t õ e s d e S e g u r a n ç a < / t h > < / t r > < T R c l a s s = " a l t " > < T d w i d t h = " 3 0 % " > N o t a F i s c a l N ú m e r o < / t d > < t d > < b > 0 0 5 3 6 3 < / b > < / t d > < / t r > < T R c l a s s = " a l t " > < T d > D a t a d e E m i s s ã o < / t d > < t d > < b > 0 9 / 1 2 / 2 0 1 5 < / b > < / t d > < / t r > < T R c l a s s = " a l t " > < T d > E m i t i d a p a r a o c l i e n t e < / t d > < t d > < b > J B T C O M P O N E N T E S E L E T R O N I C O S L T D A < / t d > < / t r > < / b > < T R c l a s s = " a l t " > < T d > C . N . P . J . d o C l i e n t e < / t d > < t d > < b > * * * * * * * * * * * * * * ( S e n h a d o A r q u i v o . Z I P ) < / t d > < / t r > < / b > < T R c l a s s = " a l t " > < T d > t o t a l d a N o t a F i s c a l < / t d > < t d > R $ 1 9 2 , 2 1 < / t d > < / t r > < T R c l a s s = " a l t " > < T d > N o t a F i s c a l e m i t i d a p o r < / t d > < t d > B E R G O E A L V E S I N F O R M A T I C A M E < / t d > < / t r > < T R c l a s s = " a l t " > < T d > C . N . P . J . d o E m i t e n t e < / t d > < t d > 0 8 4 4 9 0 8 0 0 0 0 1 7 9 < / t d > < / t r > < T R c l a s s = " a l t " > < T d > f o n e d o E m i t e n t e < / t d > < t d > 1 1 3 3 3 7 5 8 7 8 < / t d > < / t r > < / t a b l e > < b r > A r q u i v o e n v i a d o e m c a r a t e r d e t e s t e . < B r > < b r > E m a i l E n v i a d o a u t o m a t i c a m e n t e p e l o S i s t e m a R A O . < b r > D e s e n v o l v i d o p o r w w w . r a o s i s t e m a s . c o m . b r

Postado
procedure TForm1.PNGButton2Click(Sender: TObject);
var
 vaux, Para : String;
 CC, Evento: Tstrings;
 t:Integer;
begin
mostraaguarde;
cli.findkey([notascliente.value]);

if cbemailcompacta.Checked then vaux:='Omitida por questões de Segurança' else vaux:= Copy(notasnfe_chave.Value, 4, 44);
memo1.Lines.Clear;

    if (cbhtml.Checked) or (cbemailcompacta.Checked) then begin
        Memo1.Lines.Add('<style> #customers {font-family: "Trebuchet MS", Arial, Helvetica, sans-serif; width: 100%; border-collapse: collapse;}'+
                        '#customers td, #customers th {font-size: 0.7em; border: 1px solid #98bf21; padding: 3px 7px 2px 7px;}'+
                        '#customers th {font-size: 1em; text-align: left; padding-top: 5px; padding-bottom: 4px; background-color: #A7C942; color: #ffffff;}'+
                        '#customers tr.alt td {color: #000000; background-color: #EAF2D3;} </style>'+
                        '<table id="customers">'+
                        '<TR><th colspan=2>Nota fiscal Eletrônica - NF-e</th></tr>'+
                        '<TR><th colspan=2>Emitida por '+edtemitrazao.Text+'</th></tr>'+
                        '<TR><th colspan=2>Chave: '+vaux+'</th></tr>');

        memo1.lines.add('<TR class="alt"><Td width="30%">Nota Fiscal Número</td><td><b>'+
                        copy(formatfloat('0000000',notascodnota.Value),2,6)+'</b></td></tr>');
        memo1.lines.add('<TR class="alt"><Td>Data de Emissão</td><td><b>'+
                        formatdatetime('dd/mm/yyyy',notasdataemiss.Value)+'</b></td></tr>');
        memo1.lines.add('<TR class="alt"><Td>Emitida para o cliente</td><td><b>'+
                        notasdescricaocliente.Value+'</td></tr></b>');

        if cbemailcompacta.Checked then begin
        memo1.lines.add('<TR class="alt"><Td>C.N.P.J. do Cliente</td><td><b>'+
                        '************** (Senha do Arquivo .ZIP)'+'</td></tr></b>');
        end
        else begin
        memo1.lines.add('<TR class="alt"><Td>C.N.P.J. do Cliente</td><td><b>'+
                        clicnpj.Value+'</td></tr></b>');
        end;

        memo1.lines.add('<TR class="alt"><Td>total da Nota Fiscal</td><td>'+
                        'R$ '+formatfloat('###,###,##0.00',notasTOTAL_NOTA.value)+'</td></tr>');
        memo1.lines.add('<TR class="alt"><Td>Nota Fiscal emitida por</td><td>'+
                        edtEmitRazao.text+'</td></tr>');
        memo1.lines.add('<TR class="alt"><Td>C.N.P.J. do Emitente</td><td>'+
                        edtemitcnpj.Text+'</td></tr>');
        memo1.lines.add('<TR class="alt"><Td>fone do Emitente</td><td>'+
                        edtEmitfone.text+'</td></tr></table><br>');
        for t := 0 to mmEmailMsg.Lines.Count - 1 do
        Memo1.lines.Add(mmEmailMsg.Lines[t]+'<Br>');
        memo1.Lines.Add('<br>');
        Memo1.Lines.Add('Email Enviado automaticamente pelo Sistema RAO.<br>');
    end
    else begin
        Memo1.Lines.Add('Nota Fiscal Eletrônica - NF-e');
        Memo1.Lines.Add('');
        Memo1.Lines.Add('Emitida por '+edtemitrazao.Text);
        Memo1.Lines.Add('Chave: '+vaux);
        Memo1.Lines.Add('Nota Fiscal Número: '+copy(formatfloat('0000000',notascodnota.Value),2,6));
        Memo1.Lines.Add('Data de Emissão: '+formatdatetime('dd/mm/yyyy',notasdataemiss.Value));
        Memo1.Lines.Add('total da Nota Fiscal: R$ '+formatfloat('###,###,##0.00',notasTOTAL_NOTA.value));
        Memo1.Lines.Add('');
        for t := 0 to mmEmailMsg.Lines.Count - 1 do
        Memo1.lines.Add(mmEmailMsg.Lines[t]);
        Memo1.Lines.Add('');
        Memo1.Lines.Add('Email Enviado automaticamente pelo Sistema RAO.');
    end;
  memo1.Lines.Add('Desenvolvido por www.raosistemas.com.br');

  para:=LowerCase(cliemail2.Value);

  if not(InputQuery('Enviar Email', 'Email de destino', Para)) then
    exit else
  begin
      ACBrNFe1.NotasFiscais.Clear;
      ACBrNFe1.NotasFiscais.LoadFromFile(edtPathLogs.Text + '\nfe\' + trim(copy(notasnfe_chave.Value+'                                                                     ',4,44))+'-nfe.xml');
      if notasnfe_cstat.Value=101 then ACBrNFeDANFeRL1.NFeCancelada:=True else ACBrNFeDANFeRL1.NFeCancelada:=False;

      if (cbdanfe.Checked=false) or (ACBrNFe1.NotasFiscais.Items[0].Confirmada=True) then begin
              CC:=TstringList.Create;
              //CC.Add('[email protected]'); //especifique um email válido
              //CC.Add('[email protected]');    //especifique um email válido
                if cbemailcompacta.Checked=false then begin
                  ACBrNFe1.NotasFiscais.Items[0].EnviarEmail(Para
                                                           , edtEmailAssunto.Text
                                                           , Memo1.Lines
                                                           , cbpdf.Checked //Enviar PDF junto
                                                           , CC //Lista com emails que serão enviado cópias - TStrings
                                                           , nil // Lista de anexos - TStrings
                                                           ); // Auto TLS
              end
              else begin
                  if ( frmStatus = nil ) then
                    frmStatus := TfrmStatus.Create(Application);
                  frmStatus.lblStatus.Caption := 'Gerando Arquivo zip...';
                  frmStatus.Show;
                  frmStatus.BringToFront;
                  Application.ProcessMessages;

                  zip.Reset;
                  zip.ArchiveFile:='NotaFiscal_'+copy(FormatFloat('0000000',notascodnota.Value),2,6)+'.zip';
                  zip.Password:=sonum(cliCnpj.Value);
                  zip.IncludeFiles(edtPathLogs.Text + '\nfe\' + trim(copy(notasnfe_chave.Value+'                                                                     ',4,44))+'-nfe.xml');
                  if cbpdf.Checked then zip.IncludeFiles(edtdirpdf.Text+'\'+trim(copy(notasnfe_chave.Value+'                                                ',4,50))+'-nfe.pdf');
                  zip.Compress;

                  frmStatus.lblStatus.Caption := 'Transmitindo...';
                  Application.ProcessMessages;

                      acbrmail1.IsHTML := True;

                      ACBrMail1.Clear;

                      ACBrMail1.Subject:=edtEmailAssunto.Text;
                      for t := 0 to Memo1.Lines.Count-1 do begin
                        acbrmail1.Body.Add(Memo1.Lines[t]);
                      end;
                      ACBrMail1.AddAddress(para);
                      acbrmail1.AddAttachment(zip.ArchiveFile);
                      ACBrMail1.Send();
                      frmStatus.Hide;

                      acbrmail1.IsHTML:=cbhtml.Checked;
              end;

             CC.Free;
              ShowMessage('Envio de Email executado.'+chr(13)+'Se ocorrer algum erro contate a RAO Sistemas.');
      end
      else ShowMessage('Nota Fiscal não Autorizada!');
  end;

end;

 

  • Consultores
Postado

Não está faltando o cabeçalho do arquivo HTML?

<html>
<head>
</head>
  etc...

 

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

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

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Postado
3 minutos atrás, EMBarbosa disse:

Não está faltando o cabeçalho do arquivo HTML?


<html>
<head>
</head>
  etc...

 

já tentei assim e nada...

inclusive o que eu achei mais estranho é que com outro sistema que tenho funciona normal, chega dessa forma, não sei se pode ser algum arquivo faltando na pasta do EXE, sei lá... as vezes alguém passou pelo problema e conseguiu resolver.

Postado

Eu tive um problema parecido, ao enviar o e-mail dos boletos eu queria mandar um pequeno html junto.

Só estava faltando setar a propriedade IsHTML do componente ACBrMail para True.

Postado

O problema não é o ishtml, está setado, o problema é o seguinte, note que tenho 2 formas de envio, uma para arquivo normal e outra se o cara quiser compactar o arquivo (zipar com senha)...

nessa última o problema ocorre, mesmo senho o mesmo código html.

 

imagem sem arquivo zip.PNG

  • Consultores
Postado

Debug linha a linha e compare os resultados enviados ao componente nas duas versões que você tem.

Tente com o programa de exemplo.

Compare com o que você implementou.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

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

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Postado
                      acbrmail1.IsHTML := True;

                      ACBrMail1.Clear;

                      ACBrMail1.Subject:=edtEmailAssunto.Text;
                      for t := 0 to Memo1.Lines.Count-1 do begin
                        acbrmail1.Body.Add(Memo1.Lines[t]);    // <--------------------------------------
                      end;
                      ACBrMail1.AddAddress(para);
                      acbrmail1.AddAttachment(zip.ArchiveFile);
                      ACBrMail1.Send();

Na verdade, na linha que marquei coloquei o html direto... antes pegava tudo de um memo e inseria no body linha a linha... quando inseri o html direto no body foi... o mesmo, sem mudar nada...

  • 1 ano depois...
  • 4 meses depois ...
  • Administradores
Postado

Boa tarde.

Este tópico está inativo a algum tempo e por isso será fechado, caso necessário favor criar um novo tópico.

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 !!

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