{HTML in Datei speichern}
function THTMLExportForm.SaveHTML(HTMLFile : TStringlist):
string;
begin
if SaveDialog1.Execute
then
HTMLFile.SaveToFile(SaveDialog1.FileName);
Result := SaveDialog1.FileName;
end;
{HTML-Datei für MB-Serie erstellen}
procedure THTMLExportForm.HTMLErzeugenMBSerie;
Var
slHTML : TStringList;
i : integer;
mrResult: Integer;
FileName :
String;
begin
try //start try Block mit finally für HTML.Free
try //start try Block Erstellung HTML
slHTML := TStringList.Create;
slHTML.Add('
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"');
slHTML.Add('
<html>');
slHTML.Add('
<head>');
slHTML.Add('
<link rel="stylesheet" type="text/css" href="MB.css"');
slHTML.Add('
<Style type="text/css"></style>');
slHTML.Add('
<title>Protokolldatei</title>');
slHTML.Add('
</head>');
slHTML.Add('
<body>');
slHTML.Add('
<img src= ".\Kopf1.bmp" width= "900" height= "150" align= "rigth" alt= "Titel" >');
slHTML.Add('
<h1 style="color:#FFFFFF; background-color:#000080; align= "right">Firma hartmann & uebach Nachrichtentechnik GmbH</h1>');
slHTML.Add('
<h1 style="color:#000080;">Objekt: '
+QryVorgabe.FieldByName('
KUNDEOBJEKT').AsString+'
</h1>');
slHTML.Add('
<table border="0" style="border-collapse:separate;"'+
'
width="100%" style="'+
'
border-left:5px solid #000080;border-right:5px solid #000080;'+
'
border-top:5px solid #000080;border-bottom:5px solid #000080;>');
slHTML.Add('
<tr>');
slHTML.Add('
<th align="left">Protokolldatei vom '+DateTimeToStr(Now)+'
</th>');
slHTML.Add('
<th align="left">ID</th>');
slHTML.Add('
<th align="left">LfdNr</th>');
slHTML.Add('
<th align="left">Datum</th>');
slHTML.Add('
<th align="left">Uhrzeit</th>');
slHTML.Add('
<th align="left">Ereignis</th>');
slHTML.Add('
<th align="left">Teilnehmer</th>');
slHTML.Add('
<th align="left">Bereich</th>');
slHTML.Add('
<tr>');
for i := 0
to QryHTML.RecordCount -1
do
begin
slHTML.Add('
<tr class="' + QryHTML.FieldByName('
Ereignis').AsString + '
">');
slHTML.Add('
<td>');
slHTML.Add(IntToStr(QryHTML.FieldByName('
ID').AsInteger));
slHTML.Add('
</td>');
slHTML.Add('
<td>');
slHTML.Add(IntToStr(QryHTML.FieldByName('
LfdNr').AsInteger));
slHTML.Add('
</td>');
slHTML.Add('
<td>');
slHTML.Add(DateToStr(QryHTML.FieldByName('
Datum').AsDateTime));
slHTML.Add('
</td>');
slHTML.Add('
<td>');
slHTML.Add(TimeToStr(QryHTML.FieldByName('
Uhrzeit').AsDateTime));
slHTML.Add('
</td>');
slHTML.Add('
<td>');
slHTML.Add(QryHTML.FieldByName('
Ereignis').AsString);
slHTML.Add('
</td>');
slHTML.Add('
<td>');
slHTML.Add(QryHTML.FieldByName('
Teilnehmer').AsString);
slHTML.Add('
</td>');
slHTML.Add('
<td>');
slHTML.Add(QryHTML.FieldByName('
Bereich').AsString);
slHTML.Add('
</td>');
slHTML.Add('
</tr>');
QryHTML.Next;
end;
slHTML.Add('
</table>');
slHTML.Add('
</body>');
slHTML.Add('
</html>');
except //Ende try Block Exceptionbehandlung Erstellung HTML
ShowMessage('
HTML Dokument konnte nicht erstellt werden');
end;
//Ende try Block end Erstellen HTML
try //Start try Block Speichern
FileName := SaveHTML(slHTML);
except //Ende try Block Exceptionbehandlung Speichern
ShowMessage('
Datei konnte nicht gespeichert werden');
end;
//Ende try Block end Speichern
try //Start try Block Datei Öffnen
if AnzeigenCheckBox.Checked
then
ShellExecute(Application.Handle, '
open', PAnsiChar(FileName),
nil,
nil, SW_ShowNormal);
except //Ende try Block Exceptionbehandlung Öffnen
ShowMessage('
Datei konnte nicht geöffnet werden');
end;
//Ende try Block end Öffnen
try //Start try Block Datei EMail versenden
if VersendenCheckBox.Checked
then
SendMail(FileName);
except //Ende try Block Exceptionbehandlung EMail versenden
ShowMessage('
Datei konnte nicht als E-Mail versendet werden');
end;
//Ende try Block end EMail versenden
try //Start try Block Datei Drucken
if DruckenCheckBox.Checked
then
ShellExecute(
handle, '
print', PAnsiChar(FileName), '
', '
', SW_HIDE);
except //Ende try Block Exceptionbehandlung Drucken
ShowMessage('
Datei konnte nicht gedruckt werden');
end;
//Ende try Block end Drucken
finally //Ende try Block TStringlist über finally wieder freigeben
slHTML.Free;
end;
//Ende try Block finally
end;