AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Tabelle in e-Mail einbauen

Ein Thema von Ykcim · begonnen am 18. Jul 2011 · letzter Beitrag vom 21. Jul 2011
Antwort Antwort
Seite 1 von 2  1 2   
Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
799 Beiträge
 
Delphi 10.4 Sydney
 
#1

Tabelle in e-Mail einbauen

  Alt 18. Jul 2011, 16:01
Hallo Zusammen,

Ich programmiere mit TurboDelphi und MySQL...
Ich habe in meinem Programm eine Funktion eingebaut, damit bei bestimmten Ereignissen an einen variablen Empfängerkreis eine e-mail automatisch verschickt wird. Das klappt auch ganz gut.

Jetzt kommt die Schwierigkeit. Ich möchte den Inhalt von einem StringGrid in gleicher tabellarischer Form in diese e-Mail einfügen und ich weiß nicht wie das geht. Ich habe heute das erste Mal mit der Mail Funktion gespielt und habe dazu folgenden (zugegebener Maßen geklauten ) Code verwendet:

Delphi-Quellcode:
function SendEmail(Recipient:string;CCList:string;sSubject:string;Body:TStringList):boolean;
var
  nAlarmnr:integer;
begin
 idSMTP:=TidSMTP.Create;
 idMessage:=TidMessage.Create;
 idSMTP.Host := 'xxx.xx.xx.xxx';
 idSMTP.Username := 'Max.Mustermann';
 idSMTP.Password := 'master';
 idSMTP.Port := 25;


 idMessage.From.text :='Max@mustermann.de';
 idMessage.Sender.text:=idMessage.From.text;


 idMessage.Recipients.EMailAddresses:= Recipient;
 idMessage.CCList.EMailAddresses := CCList;
 idMessage.Subject:=sSubject;


 idMessage.Body.Clear;
 idMessage.Body := Body;


 try
   idSMTP.Connect;
   idSMTP.Send(idMessage);
   idSMTP.Disconnect;
   result:=True;
   except on E : Exception do
     begin
       if idSMTP.connected then try idSMTP.disconnect; except end;
       result := false;
     end;
 end;
end;
Der Aufruf sieht so aus:
Delphi-Quellcode:
st := TStringList.Create;
  st.Text := Text;
  SendEmail(empfaenger, '', betreff, st);
  st.Free;
Weil der Text variabel ist, habe ich mir diesen ganz wild zusammengebaut. Allerdings benötige ich für eine Mail eine Tabelle.

Kann mir jemand einen Tip geben (außer, dass man keine Codes klauen soll) wie ich eine automatische Mail mit einem StringGrid in einer Tabelle erstelle?

Vielen Dank

Ykcim
Patrick

Geändert von Ykcim (18. Jul 2011 um 16:31 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#2

AW: Tabelle in e-Mail einbauen

  Alt 18. Jul 2011, 16:40
Mach den Body halt als HTML. Darin hast ja dann die Möglichkeit das <table>-Tag zu verwenden
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
xxl1

Registriert seit: 21. Apr 2006
88 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Tabelle in e-Mail einbauen

  Alt 18. Jul 2011, 16:40
Ein Stringgrid ist auch nur eine Tabelle und da in E-Mails HTML Code verwendet werden darf würde ich dir raten diese zu verwenden!
http://de.selfhtml.org/html/tabellen/aufbau.htm

Edit: da war einer schneller, deswegen der reundante inhalt
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#4

AW: Tabelle in e-Mail einbauen

  Alt 18. Jul 2011, 16:42
[OT] Ich war schneller [/OT]
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
799 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Tabelle in e-Mail einbauen

  Alt 18. Jul 2011, 16:45
Hallo Zusammen,

VIELEN DANK für die Antworten.

Wenn ich die Mail via html aufbauen kann, denke ich, dass ich das hinbekommen. Wo mir aber völlig die Idee fehlt, ist die Übernahme des html-Codes in meine Mail.

Könnte Ihr mir da noch einen Tip geben - bin auf dem Gebiet erst seit heute unterwegs...

Vielen Dank
Ykcim
Patrick
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#6

AW: Tabelle in e-Mail einbauen

  Alt 18. Jul 2011, 16:50
Was genau meinst du? Du bekommst doch den Body als StringList geliefert, d.h. an deiner bisherigen Methode musst du nichts ändern. Du musst in die StringList halt nur das HTML schrieben und du bist fertig.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
799 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Tabelle in e-Mail einbauen

  Alt 18. Jul 2011, 16:52
Okay - vielleicht hilft mir diese Info schon weiter! Ich werde es ausprobieren und mich dann melde!

Vielen Dank
Patrick
  Mit Zitat antworten Zitat
Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
799 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Tabelle in e-Mail einbauen

  Alt 18. Jul 2011, 22:56
Hallo,

ich war dann wohl doch ein wenig zu optimistisch... Ich habe meiner StringList über die Textvariable einen kleinen HTML-Code übergeben. Aber daraus wurde dann keine HTML-Mail, sondern der Inhalt der Mail war mein HTML-Code...

Hier eine kleine Veranschaulichung
Delphi-Quellcode:
Text:='<HTML>'+#13#10;
  Text:=Text+'<HEAD>'+#13#10;
  Text:=Text+'</HEAD>'+#13#10;
  Text:=Text+'<body><h1>Hello</h1>'+#13#10;
  Text:=Text+'</BODY>'+#13#10;
  Text:=Text+'</HTML>';
  st := TStringList.Create;
  st.Text := Text;
  SendEmail(empfaenger, '', betreff, st);
  st.Free;
Ich wäre sehr dankbar, wenn mir jemand einen Tip geben könnte - damit ich begreife, was ich tun muss und wie ich was zu ändern habe.

Vielen Dank
Ykcim
Patrick
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#9

AW: Tabelle in e-Mail einbauen

  Alt 18. Jul 2011, 23:03
Setz den ContentType deiner idMessage noch 'text/html'.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
799 Beiträge
 
Delphi 10.4 Sydney
 
#10

AW: Tabelle in e-Mail einbauen

  Alt 18. Jul 2011, 23:38
Ja ja, so ist das mit geklauten Codes - wusste erst nicht genau, wo ich das in meiner Umgebung unterzubringen hatte. Aber ich habe es nachvollziehen können und jetzt klappt es. Jedenfalls habe ich jetzt den richtigen Output aus meinem HTML-Code...

Ich mache mich jetzt mal ran und versuche das Ganze mit meiner Tabelle umzusetzen.

Vielen Dank für den hilfreichen Tip zur späten Stunde!

Ykcim
Patrick
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz