Vraag : De inhoud van DBGrid in e-mail

Hallo, heeft

I één dataset met gegevens over mijn vorm cre�ërde de volgende manier:
->a DBGrid1 op myform met bezit DataSource aan DataSource1.
->a DataSource1 met bezitsDataset wordt geplaatst aan ClientDataset1
->a ClientDataSet met bezit ProviderName wordt geplaatst aan XMLTransformProvider1.
wordt geplaatst en bezit Actief aan True.
->a XMLTransformProvider1 met bezitsFileName aan een xml-filename.
->and een DBNavigator met propery DataSource wordt geplaatst aan DataSource1.
->and wordt geplaatst heb ik de 3 kolommen die geplaatst: „dt“, „tm“ en „val“ (dt=date, tm=time, en val=value)
als persistend gebieden in DBGrid.

Now heb ik een knoop gemaakt die een standaard e-mailcliënt opent. Dat heb ik put
in de code-sectie. Maar die ik heb de inhoud van dbgrid nodig aan het lichaam -lichaam-section
of e-mail wordt gekopi�ërd. Who kent het antwoord en is bereid om me te helpen?

Greetings, Peter Kiers
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
procedure TMainForm.Button1Click (Afzender: TObject);
var
  strEmail, strSubject, strBody, Param: koord;
begin
  strEmail: = „[email protected]“;
  strSubject: = „Uw Onderwerp“;
  strBody: = „Uw Tekst van het Bericht“;

  Param: = „mailto:' + strEmail +“? subject= + strSubject +
           „&Body=“ + strBody;

  ShellExecute (MainForm.Handle, „open“, PChar (Param), nul, nul, SW_SHOWNORMAL);
eind;

Antwoord : De inhoud van DBGrid in e-mail

u kunt de functies van Geert_Gruwez gebruiken of van Epasquier, maar ik veronderstel het op functie ShellExecute, wegens teveel karakter en speciale karakters zal ontbreken.

Voor zover ik weet u JCL - > hebt geïnstalleerd kunt u zijn eenheid JclMAPI als dit gebruiken:

gebruik
  JclMAPI;

procedure TForm1.Button1Click (Afzender: TObject);
var
  strEmail, strSubject: koord;
  s: koord;
  i: Geheel;
begin
  strEmail: = „[email protected]“;
  strSubject: = „Uw Onderwerp“;

  // de functie van gebruiksGeert_Gruwez of de functie van Epasquier om lichaam te produceren
  s: = '';
  voor I: = 0 aan lijst. fields.Count-1
    s: = s + Formaat („%20: jaren '20“, [lijst. Fields.Fields [I]. Titel]);
  s: = s + #13#10 + DupeString („-“, 21*table. Fields.Count) + #13#10;
  terwijl niet lijst. Eof
  begin
    voor I: = 0 aan lijst. fields.Count-1
      s: = s + Formaat („%20: jaren '20“, [table.fields. Gebieden [I] .AsString]);
    s: = s + #13#10;
    lijst. Daarna;
  eind;

  JclSimpleSendMail (strEmail, '', strSubject, s);
eind;
Andere oplossingen  
 
programming4us programming4us